TaggedPointer

TaggedPointer 是为64位cpu开发的技术,目的在于节省内存空间、提升性能。

标签指针通过设置它的最低位为1来标识,3位为类标识,剩下60位用于存储数据。用60个二进制位可以表示的值都可以存储在标签指针中,不需要重新申请内存。

标签指针存储的不是一个对象的地址,而是具体的值和标识位。他没有isa指针。

对于字符串:

1.长度介于0到7之间时,用8位编码存储字符串;

2.长度是8或9时,用6位编码存储字符串;

3长度是10或11时,用5位编码存储字符串。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1.ios高性能编程 (1).内层 最小的内层平均值和峰值(2).耗电量 高效的算法和数据结构(3).初始化时...
    欧辰_OSR阅读 30,000评论 8 265
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,887评论 1 32
  • 生命 散文 幽幽草 秋初,阳光透过落地窗照在屋子的半地了,看着满屋子各色的盆花,我不仅为...
    幽幽草_cb70阅读 1,400评论 5 6
  • 刀,常年游走在 磨石之上,它有众多的 想法,需要表达 其力汇于刀,背,其神聚于刀锋 通常是,刀光芒 既发自身外,更...
    顶级人生阅读 1,346评论 0 0
  • 一个人坐在星空下 绘画 想要画出一片星芒 留住即将逝去的辉煌 残碎的画面 一张张出现在脑海 勾勒着点点滴滴 一次次...
    黑橘糖阅读 1,486评论 0 1

友情链接更多精彩内容