我对项目有调试问题。这个项目不是最好的一个,它有很多内存问题(泄漏,僵尸)。这个项目不是我写的,所以我甚至不知道其中的“小奇迹”。问题是,在项目的某个地方有一个带有autorelease选项的NS(Mutable)数组。也许在另一方面有一个发布(我无法找到确切的代码行,它在哪里)。
当我在设备上运行项目时,打开几个视图后会出现内存警告。 didReceiveMemoryWarning方法得到了解释,但viewDidUnload没有。
也许项目会在发布时释放该数组,当内存警告到来并破坏自动释放池时,数组保留计数为-1 =>这是一个僵尸。 问题是,在调试模式下,没有显示任何调试行或调用堆栈,只有接收到内存警告。
[Classname didReceiveMemoryWarning]
- >和崩溃。 我启用了环境变量: NSZombieEnabled , NSHangOnUncaughtException ,
NSAutoreleaseFreedObjectCheckEnabled, NSDebugEnabled, MallocStackLogging, MallocStackLoggingNoCompact, NSDeallocateZombies
,但没有结果。
你知道我该怎么做才能找出哪个数组是有罪的(不重写整个项目:P)?