![240](https://cdn2.jianshu.io/assets/default_avatar/9-cceda3cf5072bcdd77e8ca4f21c40998.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
IP属地:北京
接上篇:iOS底层 消息查找流程在lookUpImpOrForward方法中会看到这样一段代码,当在缓存和方法列表中未能找到相应的imp时,会调...
接上篇iOS底层 objc_msgSend分析消息发送会调用lookUpImpOrForward方法,源码如下, 查找从消息列表里查找消息 如果...
1.首先通过断点查看objc_msgSend调用,在调用方法处设置断点,在菜单栏中选择Debug -> View Debugging -> 勾选...
类的结构源码如下,前面分析了isa,superclass,bits都已经分析过了,现在来看看cache,首先查看cache所在的位置。首先贴源码...
同isa一样从源码入手,首先从源码中找到类Class的定义和结构 继续找objc_class cache_t class_rw_t 找const...
一、isa的初始化 首先从源码中找到类Class的定义和结构 继续找objc_class 继续找objc_object 会发现isa的类型是is...
内存对齐之前需要掌握的一张图 内存对齐的目的 对于程序而言,一个变量的数据存储范围是在一个寻址步长范围内的话,这样一次寻址就可以读取到变量的值,...