获取详细的callstack日志

时间:2014-03-28 14:00:23

标签: visual-studio debugging

在Visual Studio中是否可以生成正在调用的方法的文本列表,以及[返回方法]的执行时间?我知道很多方法来分析应用程序,但我认为有一个明确的 - 即使长 - callstack将有助于提高发布性能。

1 个答案:

答案 0 :(得分:1)

Here's a code project article about this 它基本上归结为使用GetThreadContext()来捕获当前线程的上下文,然后使用StackWalk64()来遍历堆栈。或者,您也可以使用CaptureStackBackTrace() 这些函数只能获取构成堆栈的地址列表。要获取函数和行号的名称,您需要使用dbghelp.dll中的函数,例如 SymGetModuleInfo64()