调试内存管理问题是一件非常麻烦的事情。我们可以将环境变量NSZombieEnabled设置为YES。那么他做了什么事情呢?
系统在即将挥手对象时,如果发现通过环境变量启用了僵尸对象功能,那么还将执行一个附加步骤。系统在回收对象时,可以不将其真的回收。而是把它转化成僵尸对象。系统会修改对象的isa指针,令其指向僵尸类,从而使该对象变为僵尸对象。僵尸类能够响应所有的选择子,其响应方式为:打印一条包含消息内容及其接收者 的消息,然后终止应用程序。
iOS NSZombieEnabled开启之后做了哪些事?
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 下面选了最近十年里,十位名人所做的毕业演讲。那么多的故事与经历,其实只想告诉你一件事: 面对迷茫和不确定的未来,我...
- 成长记录-连载(三十六) ——我的第一篇五千字长文,说了什么,你一定想不到 并不是不想每天写公众号,而是之前思考怎...