isa详解

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 今天是什么日子 起床:6点25分 在火车上,4点30分就醒了,看车厢里一片漆黑,也格外安静,就没有立刻起来,放自己...
    坤道率然阅读 256评论 0 0
  • 2018年6月20日,晴 今天下班回到家,已经9点半了,宝贝进了卧室,我赶快收拾房子,在电磁炉上烧热水。一会儿...
    hongjuan阅读 369评论 0 1
  • 【书籍】优秀到不能被忽视 【字数】560 猫叔的一句话【让自己变得更好,是解决一切问题的关键】让我有了参加剽悍读书...
    龙新科品牌形象设计师阅读 235评论 0 0
  • “喜欢一个人,是藏不住的。或许是一个眼神,或许是一个微笑,或许是不起眼的一个小动作,但只要被对方捕捉到,那么就只有...
    墨砚99阅读 416评论 0 3
  • 在股市介入机会来临的等待期内,一定要耐得住寂寞 因一时冲动,是致命的。切记! 让心平静下来,静观,只等鱼儿自己跳来网箱!
    sngog阅读 205评论 0 0