调试内存管理问题是一件非常麻烦的事情。我们可以将环境变量NSZombieEnabled设置为YES。那么他做了什么事情呢?
系统在即将挥手对象时,如果发现通过环境变量启用了僵尸对象功能,那么还将执行一个附加步骤。系统在回收对象时,可以不将其真的回收。而是把它转化成僵尸对象。系统会修改对象的isa指针,令其指向僵尸类,从而使该对象变为僵尸对象。僵尸类能够响应所有的选择子,其响应方式为:打印一条包含消息内容及其接收者 的消息,然后终止应用程序。
调试内存管理问题是一件非常麻烦的事情。我们可以将环境变量NSZombieEnabled设置为YES。那么他做了什么事情呢?
系统在即将挥手对象时,如果发现通过环境变量启用了僵尸对象功能,那么还将执行一个附加步骤。系统在回收对象时,可以不将其真的回收。而是把它转化成僵尸对象。系统会修改对象的isa指针,令其指向僵尸类,从而使该对象变为僵尸对象。僵尸类能够响应所有的选择子,其响应方式为:打印一条包含消息内容及其接收者 的消息,然后终止应用程序。
本文标题:iOS NSZombieEnabled开启之后做了哪些事?
本文链接:https://www.haomeiwen.com/subject/vatzqqtx.html
网友评论