我检查了这里提到的一些性能分析器。但...
- EQATec 对我不起作用,因为我有很多要分析的程序集,并且它对要分析的程序集有限制。获得免费许可证有多麻烦?如果有人向我保证 EQATec 可以同时分析托管和非托管代码,我会选择它
- SlimTune 仅分析了我的托管代码,即使我将“Profile native functions”设置为“True”
- XTE Profiler 不再免费
- 我们有一份我们之前购买的 AQTime 6,但它似乎不支持 .NET 4.0 应用程序(它甚至无法启动我的应用程序)
- 我们使用 Visual Studio 2010 Professional SP1,所以我们没有 Visual Studio 分析器
- 我尝试了“穷人的分析”(多次停止程序并查看它的位置),但我得到的结果太随机了,而且我更习惯于传统的分析
(我已经花了一整天的时间来解决这个问题,对不起,如果我太消极了)
更新:在我清理我的解决方案后,再次构建它并检查所有调试信息(.pdb)是否已复制到与可执行文件相同的目录中,我再次尝试了 AQTime,它成功了!它向我显示了托管和非托管代码的常规计时信息,因此我的问题得到了解决。但是,我使用的是付费分析器,所以在我查看 xperf 或有人提出其他问题之前,这个问题将保持开放