美文网首页
伪指针 NSTaggedPointer

伪指针 NSTaggedPointer

作者: 梁发朋_20bb | 来源:发表于2018-07-19 10:35 被阅读0次

    举例 0xa000000007070703

    这个指针是最初没有想到的

    环境


    这是时候报错 NSTaggedPointerString 找不到方法 replace...

    1、标识符          最高四位

    2、数据内容     中间部分

    3、数据信息      最低八位

    0xa000000007070703

    Isa 0xa

    数据内容 \x70 \x70 \x70

    数据长度是3

    这个是和NSNumber的使用方式一样的设计

    打印 0xb0000000000000a2

    能够阅读 Oxb 就是类型  \a翻译成数字就是10  2就是长度为2


    总结

    苹果从推出64位处理器之后为了提升效率,采用了这种虚拟指针的技术,对于这种处理因为苹果既要维护生命周期还要维护引用计数,过多的逻辑造成了不必要的效率缺少,因此采用了这种虚拟指针

    相关文章

      网友评论

          本文标题:伪指针 NSTaggedPointer

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