iOS底层探索系列
文章平均质量分 96
单兵狗粮
这个作者很懒,什么都没留下…
展开
-
iOS底层代码探索004-由cache_t分析调用方法的缓存机制
1.前言在003-类的底层探索中,我们研究了类里的bits里的内容。superclass很明显是一个8字节的指向父类的指针。那么cache里面存储的是什么呢?今天,就让我们来研究一下cache_t。首先计算偏移量=isa的大小+superclass的大小=8+8=16字节=0x102.cache的基本数据结构查看cache_t源码struct cache_t {private: explicit_atomic<uintptr_t...原创 2021-07-23 17:51:00 · 221 阅读 · 0 评论 -
iOS底层代码探索003-类的底层探索后续
1.概念普及在阅读本篇博客前,需要了解:建议阅读博客:iOS底层代码探索003-类的底层探索1.1 isa走位与类继承关系图1.2 Clean/Dirty MemoryDirty memory:在进程运行时会发生更改的内存。Clean memory:加载后不会发生更改的内存。ro属于clean memory,在编辑时及确定的内存空间,只读,加载后不会发生改变的内存空间,包括类名称、方法、协议和实例变量的信息; rw的数据空间属于dirty memory,rw是运行时的结构.原创 2021-06-28 15:49:27 · 139 阅读 · 0 评论 -
iOS底层代码探索003-类的底层探索
1.环境准备版本为12.5的Xcode的编译器Objc debug源代码配置可以参考这篇博客https://juejin.cn/post/68449039591617331332.问题抛出原创 2021-06-20 14:52:40 · 328 阅读 · 0 评论 -
iOS底层代码探索002-类对象的本质与内存对齐
1.环境准备版本为12.5的Xcode的编译器2.问题抛出先创建一个LGPerson类。原创 2021-06-09 13:33:58 · 373 阅读 · 2 评论 -
iOS底层代码探索001-alloc到底做了什么?
1.环境准备版本为12.5的Xcode的编译器Objc debug源代码原创 2021-06-07 17:54:17 · 306 阅读 · 1 评论