美文网首页
arc环境下的dealloc做的几件事情

arc环境下的dealloc做的几件事情

作者: guoguojianshu | 来源:发表于2019-05-06 15:27 被阅读0次

    1.清除实例变量

    在runtime中使用的是这个函数.cxx_desctruct

    2.清空关联属性

    执行object_remove_assocations去除和这个对象assocate的对象(常用于category中添加带变量的属性,这也是为什么ARC下没必要remove一遍的原因 (Edit: 在ARC或MRC下都不需要remove)

    3.清空引用计数表和弱引用的表

    执行objc_clear_deallocating,清空引用计数表并清除弱引用表,将所有weak引用指nil(这也就是weak变量能安全置空的所在)

    4.编译器自动插入[super dealloc]方法

    相关文章

      网友评论

          本文标题:arc环境下的dealloc做的几件事情

          本文链接:https://www.haomeiwen.com/subject/yjtdoqtx.html