美文网首页
APP程序调用main()之前的过程有哪些?

APP程序调用main()之前的过程有哪些?

作者: 凌云01 | 来源:发表于2020-08-29 11:33 被阅读0次

main之前的加载过程
1)dyld 开始将程序二进制文件初始化
2)交由ImageLoader 读取 image,其中包含了我们的类,方法等各种符号(Class、Protocol 、Selector、 IMP)
3)由于runtime 向dyld 绑定了回调,当image加载到内存后,dyld会通知runtime进行处理
4)runtime 接手后调用map_images做解析和处理
5)接下来load_images 中调用call_load_methods方法,遍历所有加载进来的Class,按继承层次依次调用Class的+load和其他Category的+load方法
6)至此 所有的信息都被加载到内存中
7)最后dyld调用真正的main函数

参照链接:https://www.csdn.net/gather_2f/MtjaIg0sNjU2Ni1ibG9n.html

相关文章

网友评论

      本文标题:APP程序调用main()之前的过程有哪些?

      本文链接:https://www.haomeiwen.com/subject/dotdsktx.html