我在我的代码中遇到了(在我看来)一个非常困难的问题。它在代码中的不同位置随机崩溃。该项目是一个ARC项目。ios僵尸检测
所以我的程序与此消息occaisonally崩溃:
malloc: *** error for object 0xd2dd8b0: incorrect checksum for freed object - object was probably modified after being freed.
*** set a breakpoint in malloc_error_break to debug
我已经设置断点为malloc_error_break
,但我没有得到任何信息出来。当代码崩溃时,XCode向我显示代码发生的位置。但正如我所说的,崩溃是随机的,并不总是发生。但似乎崩溃集中在代码中的特定行上。
现在,我想使用xcode附带的工具进行调试。经过一番谷歌搜索,我发现以下东西在计算器上:How do I set up NSZombieEnabled in Xcode 4?和Xcode malloc error。
因此,第一个链接描述了如何通过点击xcode中的运行按钮并选择“配置文件”来从xcode本身启动僵尸检测。我遇到的问题是,在我的xcode版本(4.2)中为跟踪文档选择模板时找不到“僵尸”。但是,如果我在xcode之外启动乐器(例如,来自finder),我可以选择僵尸。
好了,这是我做过什么:
1)从取景器开始仪器和选择配置文件“植物大战僵尸”。
2)在iphone模拟器(正常运行(不是简档或调试))中从xcode启动iphone应用程序。
3)在乐器“选择目标” - >“附加到进程” - >“iPhone模拟器(57529)”。
4)仪器开始recod的东西(我不明白它是什么)。
5)开始与应用程序一起玩,直到它崩溃。
最终应用程序崩溃,这里是仪器崩溃的应用程序后的截图:
我的问题:
1)是僵尸足够我的问题,或者我应该使用其他analyizes工具?
2)什么告诉我仪器崩溃后输出?