我试图了解MSBuild的一些性能摘要输出。结果如下所示:
Target Performance Summary:
0 ms PrepareForRun 74 calls
0 ms Compile 74 calls
...
...
...
...
15173 ms ResolveProjectReferences 74 calls
29607 ms Build 75 calls
Task Performance Summary:
2 ms CreateCSharpManifestResourceName 6 calls
2 ms ResolveKeySource 1 calls
...
...
...
...
3623 ms Copy 511 calls
7468 ms ResolveAssemblyReference 74 calls
11234 ms Exec 12 calls
48600 ms MSBuild 210 calls
Build succeeded.
0 Warning(s)
0 Error(s)
Time Elapsed 00:00:29.60
为什么MSBuild的总时间超过总耗用时间?事实上,运行此构建的实际秒表时间约为29秒。我在网上看到的这些摘要的任何例子都表明,任务和目标的总时间是相同的。
答案 0 :(得分:5)
MSBuild和CallTarget任务调用其他目标(以及其他任务)。花在这些任务上的时间也是根据MSBuild和CAllTarget任务计算的。一个错误,真的。
因此,在阅读此数据时,请始终忽略这两项任务。总结其他任务应该比总构建时间少一点。