一、_objc_init
1.environ_init(),初始化一系列環(huán)境變量,并讀取影響運行時的環(huán)境變量
2.tls_init(),線程key的綁定
3.static_init(),運行C++靜態(tài)構(gòu)造函數(shù)
4.lock_init(),空函數(shù)
5.exception_init(),初始化libobjc的異常處理系統(tǒng),注冊異常處理的回調(diào),從而監(jiān)控異常的處理
6._dyld_objc_notify_register(),注冊處理程序
二、map_images->_read_images
1.創(chuàng)建表
2.類的重映射
3.修復重映射
4.添加SEL到namedSelector表
5.修復舊的函數(shù)指針調(diào)用遺留
6.添加Protocol到協(xié)議表
7.修復協(xié)議列表引用
8.實現(xiàn)非懶加載的類
9.實現(xiàn)懶加載類