【发布时间】:2009-10-06 11:14:47
【问题描述】:
释放自动释放池时,我的应用程序崩溃。原因似乎是带有自动释放消息的对象在释放池之前的某个时间发送了释放消息,因此应用程序会因已释放的对象而崩溃。
因此我想找出哪些对象有待处理的自动释放消息,以便我可以平衡该对象的保留..释放/自动释放消息
【问题讨论】:
释放自动释放池时,我的应用程序崩溃。原因似乎是带有自动释放消息的对象在释放池之前的某个时间发送了释放消息,因此应用程序会因已释放的对象而崩溃。
因此我想找出哪些对象有待处理的自动释放消息,以便我可以平衡该对象的保留..释放/自动释放消息
【问题讨论】:
如果您不了解“NSZombieEnabled”,您肯定需要检查一下 - 说明是 here
它不会告诉你哪些对象在自动释放池中,但它会告诉你哪些对象被过度释放。
简而言之:
1)在 Xcode 项目的可执行文件组中双击一个可执行文件。
2)单击“参数”选项卡。
3)在“要在环境中设置的变量:”部分中,创建一个名为“NSZombieEnabled”的变量并将其值设置为“YES”。
【讨论】: