在 xcode 中跟踪僵尸对象

Chl*_*bta 5 iphone xcode cocoa-touch objective-c ios

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

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

此外,我已经检查Enable Zombie Objects中

产品->方案->编辑方案->运行->诊断

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

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

更新 错误: 在此处输入图片说明

Dar*_*ust 3

NSZombie 的问题在于,它使对象保持活动状态,而不是释放它们,而是将它们变成特殊对象,一旦您尝试调用它们的方法,它们就会抱怨。

但是,如果您有一些代码(例如仅尝试访问实例变量的块)(而不调用该对象上的方法),那么现在这将成功,因为对象的内存区域现在​​仍然可用。

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

  • 普通调试器给我哪个线程,但我无法猜测哪个对象导致了问题。此外,此错误仅出现在 iphone 5C 中,对于其他设备 iphone 6、5s 和不同的模拟器,此错误不会出现 (2认同)