我有一个32位的CPP窗口服务程序,有时它的CPU使用率会随机变高(70%)。我已经从32位任务管理器(32位转储)和64位任务管理器(64位转储)中获取了exe的进程转储。有谁能指导我如何分析这些转储,以找出我的代码的哪一部分造成了这么高的CPU使用率。
进程转储分析32位进程的高CPU使用量。
我建议你可以在visual studio中调试这些dump文件,这样你就可以找到哪里出了问题。
建议
2) 打开VS,选择File-->Open-->File-->选择dump文件。
3) 配置dll和pdb文件的路径(xxx\project name\bin\Debug
)进入Symbols Window,同时在Symbols Window下查看Microsoft Symbol Server。
4) 然后您可以点击 仅在托管状态下进行调试 来进行调试。
您可以参考 使用Visual Studio调试转储文件 更详细的步骤。
此外,你也可以尝试 使用Windbg分析转储文件 和 这个.