iOS程序,在main函数之前发生了什么

ios 同时被 2 个专栏收录
419 篇文章 0 订阅
50 篇文章 0 订阅

返回上级目录:iOS面试和知识点整理

  1. 系统先读取 app 的可执行文件(Mach-O 文件 ),从里面获得 dyld (the dynamic link editor 动态链接器)的路径,然后加载 dyld ,dyld 去初始化运行环境
  2. 开启缓存策略,加载程序相关依赖库(其中也包括我们的可执行文件),并对这些库进行链接,最后调用每个依赖库的初始化方法,在这一步,runtime被初始化
  3. 当所有的依赖库初始化后,轮到最后一位(程序可执行文件)进行初始化,在这时runtime会对项目中所有类进行类机构初始化,然后调用所有的load方法。最后 dyld 返回
    main 函数地址, main 函数被调用,我们便来到程序入口 main 函数。

简单总结

  • 读取 app 的可执行文件(Mach-O 文件 )
  • 加载和连接相关的依赖库
  • 初始化runtime
  • runtime对项目中所有类进行类机构初始化,调用所有的load方法

iOS 程序 main函数之前发生什么

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值