我阅读this documentation article关于库和框架链接的内容,以下部分引起了我的注意:
...只有在需要时才会加载可选框架。如果将从不需要的大型库指定为Optional,则应用程序的初始加载速度会更快。
所以我问为什么我不会将所有框架设置为B2:B
,如果它们会在必要时加载?会有什么缺点?
答案 0 :(得分:1)
使用可选库需要额外的代码,因为它使用weak linking:
if (MyWeakLinkedFunction != NULL)
{
result = MyWeakLinkedFunction();
}
这使得使用图书馆有点痛苦;我希望知道在程序加载时符号可用,如果它们不是O / S可以处理告诉用户。
答案 1 :(得分:0)
我猜是因为这条线
应用程序的初始加载......
如果您设置为optionaly,那么您可能会在应用程序中稍后加载“大”负载,这可能是不需要的。因此,尽早加载框架将减少加载时间。
这就是我想象的