在这里的长期 OS X 开发人员,所以我对 Windows 上存在哪些类似于 OS X Instruments 的分析工具有点困惑。
使用 Instruments,我可以从字面上看到函数调用以及每个函数调用的时间,以及确定哪些线程可能占用了过多的 CPU 时间。
我已经尝试过内置的分析器,但它只是告诉我随着时间的推移 CPU 使用情况,没有调用树。
内置分析器是否支持此功能?还是我应该看第三方工具?
提前致谢!
在这里的长期 OS X 开发人员,所以我对 Windows 上存在哪些类似于 OS X Instruments 的分析工具有点困惑。
使用 Instruments,我可以从字面上看到函数调用以及每个函数调用的时间,以及确定哪些线程可能占用了过多的 CPU 时间。
我已经尝试过内置的分析器,但它只是告诉我随着时间的推移 CPU 使用情况,没有调用树。
内置分析器是否支持此功能?还是我应该看第三方工具?
提前致谢!
您可以在 VS2010 分析器中看到所有这些,尽管有第三方工具可能做得更好/更容易。(DotTrace、RedGate 的 ANTS Profiler 等)。
在 VS2010 中,如果您转到分析 > 启动性能向导,您有四个选项。前两个与方法级别的计时和计数有关,即单线程性能分析。第三个与分配有关,第四个选项将让您查看多线程应用程序的分析(单个 cpu 内核的使用情况、锁争用等)。对于多线程分析,请同时选中“可视化多线程应用程序的行为”。
Red Gate 的ANTS Profiler是一个非常有用的工具,用于分析您的 .NET 应用程序;但是,它不是免费的。
Jetbrains使用dottrace制作了一个工具来分析性能和内存。
我以前用过ANTS,还不错,但除了试用,我从来没有在意过任何事情
http://www.red-gate.com/products/dotnet-development/ants-performance-profiler
RedGate 为此做了一些很好的工具 - ANTS profiler 可用
还有来自 JetBrains 的 dotTrace