美文网首页
iOSAPP应用启动时间查看 Pre-main时间查看

iOSAPP应用启动时间查看 Pre-main时间查看

作者: 拇指猿 | 来源:发表于2020-06-08 16:01 被阅读0次

    可以在Scheme 中添加环境变量DYLD_PRINT_STATISTICS

    DE35C95D-A2A3-4F35-976A-FDE235775A83.png
    WWDC 2016 Session 406优化应用程序启动时间详细介绍了每个步骤以及改进时间的提示,以下是简要的总结说明:
    • dylib loading time 动态加载程序查找并读取应用程序使用的依赖动态库。每个库本身都可能有依赖项。虽然苹果系统框架的加载是高度优化的,但加载嵌入式框架可能会很耗时。为了加快动态库的加载速度,苹果建议您使用更少的动态库,或者考虑合并它们。

    建议的目标是六个额外的(非系统)框架。

    • Rebase/binding time 修正调整镜像内的指针(重新调整)和设置指向镜像外符号的指针(绑定)。为了加快重新定位/绑定时间,我们需要更少的指针修复。
      如果有大量(大的是20000)Objective-C类、选择器和类别的应用程序可以增加800ms的启动时间。
      如果应用程序使用C++代码,那么使用更少的虚拟函数。
      使用Swift结构体通常也更快。

    • ObjC setup time Objective-C运行时需要进行设置类、类别和选择器注册。我们对重新定位绑定时间所做的任何改进也将优化这个设置时间。
      initializer time 运行初始化程序。如果使用了Objective-C的 +load 方法,请将其替换为 +initialize 方法。

    相关文章

      网友评论

          本文标题:iOSAPP应用启动时间查看 Pre-main时间查看

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