iOS 项目启动时间优化之pre-main 时间

苹果为查看 pre-main 提供了支持,具体配置如下,配置的 key 为:DYLD_PRINT_STATISTICS。



然后再运行项目,Xcode 就会在控制台输出这部分 pre-main 的耗时:

Total pre-main time: 2.2 seconds (100.0%)
 dylib loading time: 1.0 seconds (45.2%)
rebase/binding time: 100.05 milliseconds (4.3%)
    ObjC setup time: 207.21 milliseconds (9.0%)
   initializer time: 946.39 milliseconds (41.3%)
slowest intializers :
           libSystem.B.dylib :   8.54 milliseconds (0.3%)
 libBacktraceRecording.dylib :  46.30 milliseconds (2.0%)
        libglInterpose.dylib : 187.42 milliseconds (8.1%)
                     beiliao : 896.56 milliseconds (39.1%)

但是这部分不是那么好处理,因为这部分主要是由以下几个方面影响的:

  • 用到的系统的动态库的数量,比如 UIKit.framework 等

  • cocoapods 里引用的第三方框架数量

  • 项目中类的数量

  • load 方法中执行的代码

  • 组件化


君凯商联网-iOS-字唐名僧




猜你喜欢

转载自blog.csdn.net/u010960265/article/details/78720423