使用 Windbg 分析堆栈跟踪时,我正在使用~*e!clrstack
有一种方法只报告一次相同的堆栈会很有用,尤其是当线程数很大时。一种选择是用于输出的小型解析器实用程序,但这需要额外的步骤。
是否有一些 Windbg 扩展或命令可以提供帮助?
使用 Windbg 分析堆栈跟踪时,我正在使用~*e!clrstack
有一种方法只报告一次相同的堆栈会很有用,尤其是当线程数很大时。一种选择是用于输出的小型解析器实用程序,但这需要额外的步骤。
是否有一些 Windbg 扩展或命令可以提供帮助?
对于本机代码,您将使用!uniqstack
为每个线程显示堆栈跟踪,并省略类似的堆栈跟踪。
我不确定是否存在等效的托管扩展命令。您最好的概览可能是用于!EEStack -short -EE
隐藏未运行托管代码、持有锁或等待 GC 的堆栈。
根据您正在查看的问题,一个或另一个(或两者)可以帮助您。
您可以同时在 Visual Studio 2010 或 2012 中打开转储并使用“并行堆栈”窗口。不知道这对托管有多好。