【问题标题】:How to see an object that is receiving messages after being deallocated如何查看释放后正在接收消息的对象
【发布时间】:2012-10-19 14:56:29
【问题描述】:

我遇到了错误,但想要更具体的信息,如行号、类名、方法名等。

-[__NSArrayM release]: message sent to deallocated instance 0x72ab440

也就是说,解密内存地址0x72ab440?

有什么帮助吗?

【问题讨论】:

  • 保留断点对调试代码没有帮助吗?

标签: iphone xcode crash release dealloc


【解决方案1】:

这不是您要查找的行号,因此您得到的有关如何显示行号的答案是错误的树。

您要求的是一种了解正在向哪些对象发送消息的方法,即使它们已被释放。

这样做的方法是打开 NSZombies。

您可以在 Xcode 的 Scheme 设置中进行操作

确保你只拥有这个用于调试版本,顺便说一句。

启用此选项后,您将获得有关正在向哪个对象发送消息以及来自何处的更多信息指示。

【讨论】:

    【解决方案2】:

    在 Xcode finder 窗口中选择 Xcode 首选项,然后选择文本编辑,最后选择行号中的复选标记选项。 XCode>首选项>文本编辑>行号(选中复选标记)

    【讨论】:

      【解决方案3】:

      转到XCode -> Preferences -> Text Editing并修改以下内容..

      【讨论】:

        【解决方案4】:

        你可以使用 DLog,但是你已经知道问题出在哪里了......

        Difference between NSLog and DLog

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2010-12-07
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-02-26
          • 1970-01-01
          • 2011-09-07
          相关资源
          最近更新 更多