我已经从Windows SDK安装了Xperf性能分析器,并使用以下命令捕获了文档中描述的跟踪:
xperf -on SysProf -stackwalk profile不过,堆栈跟踪不包含任何callstack数据。
我的平台是Vista 64b。在64bWindows上捕获callstack是否需要任何特殊设置或技巧?
发布于 2009-01-26 14:00:57
经过进一步的搜索,我发现了一个设置:
设置注册表值DisablePagingExecutive =1并重新启动(请参阅Windows Performance Toolkit FAQ)。
虽然这听起来很棒,但在我的系统中似乎没有帮助,仍然没有调用堆栈。
联系微软支持后,他们的回复是使用x64 Vista,您只能捕获x64本机应用程序的调用堆栈,而不是32b应用程序。
Valve presentation on Xperf说,Windows7似乎已经消除了这一限制,它在Win7 x64上运行得很好。
https://stackoverflow.com/questions/479832
复制相似问题