【发布时间】:2017-07-29 10:55:08
【问题描述】:
我在 Swift 中有项目,当我使用 DYLD_PRINT_STATISTICS 进行测量时,我可以看到 1.0 秒的预初始化时间,其中 70% 是动态库链接。
是否有任何干净和安全的方法来处理这个问题?
【问题讨论】:
-
Cocoapods 我想,你用那个吗?
-
很可能是链接框架。没有更具体的信息,我无法给出更具体的答案。也就是说,上面的WWDC 2017 Session 很有启发性。
-
@J.Doe cocoapods 确实如此。但是如果我手动添加库,它不会解决问题,因为动态链接将以一种或另一种方式存在。我遇到了将所有 pod 转换为静态库的解决方案。但这在我看来并不是一个干净的解决方案
-
@BrandonBradley 感谢您提供的链接,我会检查一下。什么信息可能有用?我会提供的
-
@Roma 我突然想到,您运行 macOS High Sierra 测试版的可能性很小,这就是会话的主题(我的错)。相反,我会推荐去年 WWDC 中的Optimizing App Startup Time。本次演讲最有用的部分可能从 27:30 开始。会话通过一个太慢的应用程序,并大大加快了它。具体而言,我指的是库的数量、原始启动时间、是否使用 ObjC / C++ 以及您是否有权访问库源代码。
标签: ios swift swift3 dyld app-startup