用"僵尸对象"调试内存管理问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用"僵尸对象"调试内存管理问题相关的知识,希望对你有一定的参考价值。

Cocoa提供了"僵尸对象"(Zombie Object)这个功能。启用这项调试功能之后,运行时系统会把所有已经回收的实例转化成特殊的"僵尸对象",而不会真正回收它们。这种对象所在的核心内存无法重用,因此不可能遭到覆写。僵尸对象收到消息后,会抛出异常,其中准确说明了发送过来的消息,并描述了回收之前的那个对象。僵尸对象是调试内存管理问题的最佳方式。

开启僵尸模式的方法:
Xcode->Product->Scheme->Edit Scheme->Run->Diagnostics->勾选Enable Zoombie Objects

以上是关于用"僵尸对象"调试内存管理问题的主要内容,如果未能解决你的问题,请参考以下文章

Java GC 没有第二次收集“僵尸”对象

为啥崩溃会随着“僵尸对象”而消失?

python深入1内存管理

启用僵尸对象不足以帮助调试我的问题 - 我还能做啥?

虚拟机内存管理之内存分配器

应用程序错误 内存不能为written