在build setting的Other Swift Flags中添加以下flag,就可在building log中看到詳細的編譯時長:
-Xfrontend -debug-time-compilation:輸出文件的編譯時長
-Xfrontend -debug-time-function-bodies:輸出function編譯時長
-Xfrontend -debug-time-expression-type-checking:輸出function內每一行代碼的編譯時長
-Xfrontend -warn-long-function-bodies=100:編譯時間超過100ms的function報警告
-Xfrontend -warn-long-expression-type-checking=100:編譯時間超過100ms的代碼報警告
日誌通常都有數十萬行,可閱讀性極差。GitHub上有個工具能夠方便的統計展現這些日誌信息,連接以下: github.com/fastred/Opt…
使用flag和對應的工具能夠定位到具體編譯時間特長的代碼的位置,相應的進行修改就能解決代碼層面的編碼時間長的問題。git
參考文檔比我寫的詳細,我只是將這些文檔實踐,而後總結一下有用的東西。
koke.me/2017/03/24/…
hackernoon.com/speed-up-sw…
github.com/fastred/Opt…
工具連接: github.com/RobertGumme…github