跟踪xcode中的僵尸对象

时间:2015-08-27 14:42:40

标签: ios objective-c iphone xcode cocoa-touch

我在我的IOS应用中收到此错误exc_bad_access code=1 address= xcode所以我尝试使用这样的僵尸工具:

  

Product-> Profile-> Zombies然后我点击开始录制(红点)

我也检查了<{p>中的Enable Zombie Objects

  

产品 - &gt;方案 - &gt;编辑方案 - &gt;运行 - &gt;诊断

问题是当我使用僵尸模式并尝试模拟错误时,不会模拟错误,也不会检测到错误。当我以正常模式运行我的项目,调试时,会发生错误并且应用程序崩溃。

所以我在这里错过了什么? 请注意,这是我第一次使用僵尸工具。谢谢。

更新 错误: enter image description here

1 个答案:

答案 0 :(得分:2)

NSZombie的问题在于它保持对象不活动而不是释放它们,但是当它们试图在它们上面调用方法时,它们就会变成特殊的对象。

但是,如果你有一些像块一样的代码只是试图访问实例变量(不调用该对象上的方法),现在这将成为对象的内存区域现在仍然可用。

如果您还没有这样做,只需尝试在没有NSZombie的普通调试器中运行代码,因为它应该告诉您堆栈跟踪中发生崩溃的位置。