1

嗨,我的一个应用程序反复崩溃并给出以下错误。

 *** -[CFString release]: message sent to deallocated instance 0x1b7a3b70

有没有办法通过使用内存地址来获取对象名称。我使用了仪器(僵尸),甚至我在 Xcode 中启用了僵尸,但没有运气。你能帮我解决这个问题吗?我卡住了,请帮帮我。

4

2 回答 2

1

这显然是一个字符串。可能是 CFString,但可以从 NSString 桥接。有了这些知识,就可以使用调试器和断点了。通过断点,您可以单步执行代码,并使用 QuickLook 查看有关对象的详细信息。

于 2014-09-10T13:30:41.710 回答
1

大多数 Objective-C 对象没有名称。(有一些例外,比如 NSOperationQueue)。

使用静态分析器总是一个好主意,查看所有警告并修复它们等。特别是如果您的代码使用 ARC 不会自动处理的 CoreFoundation,但静态分析器通常会发现不正确的用途。

显示发生这种情况的堆栈跟踪也可能会有所帮助。

于 2014-09-10T13:09:07.800 回答