如何追踪慢速编译Swift代码?

时间:2015-03-19 00:30:12

标签: xcode swift compilation

Xcode添加了一个很棒的功能,可以看到您的应用程序实时编译,但是如何查看各个类的编译持续时间,然后进一步查看导致编译时间慢的代码?

This很有帮助,但只能在那里分道扬。

3 个答案:

答案 0 :(得分:6)

使用xctool。在命令行上编译项目时,它将释放将每个文件编译到控制台所花费的时间。 e.g:

✓ Compile MySwiftFile.swift (12067 ms)

此外,对于Swift 1.2,至少有一个标志debug-time-function可以传递给Swift编译器,以显示有问题的函数

进一步讨论here

答案 1 :(得分:1)

打开“报告”导航器(“气球”图标左侧窗格)。在构建时单击构建锤子的最顶行,您将看到每个编译文件的编译进度。

答案 2 :(得分:1)

Swift现在包含一个逐个函数的编译器分析器。您可以使用编译器标志-Xfrontend -debug-time-function-bodies启用它。

运行干净重建并使用this post中的grep命令按功能获取反向排序的编译时间列表。

这对我非常有帮助 - 通过调整最慢编译函数,我可以缩短建立时间15秒。