isa详解

作者: roger_Hunter | 来源:发表于2019-02-12 11:24 被阅读0次
    1.png 2.png
    在arm64之前isa就是普通的指针,只存储类对象,元类对象的指针,但是arm64之后,isa做了优化,采取了共用体结构,将一个64位的内存数据分开存储了很多东西,其中33位用来存储地址值
    3.png
    4.png 5.png 6.png 7.png 8.png

    右边数第二位是1与has_assoc相对,说明有关联对象


    9.png 10.png 11.png
    这个刚好是弱引用为1,所以通过isa,可以搞清楚,是否有关联对象,是否弱引用过
    如果没有设置过关联对象和弱引用的话,会释放的更快,从下面的源码中可以看到
    12.png
    转载至:https://blog.csdn.net/u012581760/article/details/81230721

    相关文章

      网友评论

          本文标题:isa详解

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