#runtime

列举部分常见的runtime API;

OC是一门动态性比较强的编程语言,允许很多操作推迟到程序运行时再进行
OC的动态性就是由Runtime来支撑和实现的,Runtime是一套C语言的API,封装了很多动态性相关的函数


Runtime最核心的东西,objc_msgSend


简单了解一下,OC在调用方法的时候,底层的实现逻辑是什么?


在arm64架构之前,isa就是一个普通的指针,存储着Class、Meta-Class对象的内存地址;
从arm64架构开始,对isa进行了优化,变成了一个共用体 "union" 结构,还使用位域来存储更多的信息。
所以,为什么要使用这种方式来优化呢?