每次我在模拟器中退出应用程序。 控制台显示以下错误消息:
*** -[NSThread _nq:]: message sent to deallocated instance 0x6d770e0
看起来该应用尝试访问已取消分配的实例。 但无论如何,即使使用乐器也无法找到它。
我找不到导致问题的代码行。
P.S。我已经尝试过任何我知道的方法来调试这个问题。但还没有成功。 我启用了NSZombie并使用仪器来帮助我找出错误。但错误报告没有指向我自己的任何代码。我不知道为什么会这样。
答案 0 :(得分:2)
在XCode的左窗格中双击您的可执行文件,转到参数选项卡,添加一个名为NSZombiesEnabled的新文件,并将其值设置为YES。这会将所有解除分配的实例设置为NSZombie,您将能够分辨出要释放的类型。
注意:必须先将其关闭,否则您的应用永远不会释放内存!
答案 1 :(得分:1)
修正了,这个问题是我访问不在主线程中的接口对象。你可以[self performSelectorOnMainThread....]
。