动态方法决议 objc_msgSend发送消息会先从缓存里面imp缓存中查找,如果没有查找到会进入lookUpImpOrForward查找,先从...
objc_msgSend是使用汇编编写的,首先 在缓存中查找方法的imp,如果没有查找到方法,则会调用lookUpImpOrForward开启慢...
oc是动态语言,sel会在运行时查找imp的内存地址相对于静态语言,在编译期间已经确定了imp的内存地址。 objc_msgSend arm64...
OC中的类是一个继承自objc_object的objc_class结构体。 cache_t是做什么的?从字面上理解是缓存,那又存储什么? cac...
NAT:内网打穿到公网 STUN:公网信息交换,进行连接 TURN:云端服务器,防止STUN连接失败,A端通过TURN服务器转发给B端 ICE:...
LLVM是架构编译器(compiler)的框架系统,以C++编写而成,用于优化以任意程序编写的程序的编译时间(compile-time)、链接时...
临时变量什么时候释放自动释放池的原理自动释放池能否嵌套使用 使用xcode创建一个project在创建的时候有会生成一个main.m文件,其中@...
NSTimer提供的timerWithTimeInterval:target:selector,该方法中target会对self进行强引用 解决...
oc和swift都是使用引用计数进行管理对象。 每个对象的引用计数是如何存储的? isa是一个64位的联合体位域,根据CPU架构的不同每个成员的...