1、通过windbg查看信息:
下载symbol包:
然后安装到
D:\WinDbg\Symbol
找到正确版本的sos.dll文件,放到
D:/DevLib/4.0.30319.18408/X64/中
打开Windbg X64
file->symbol file path,设置值为:
D:\WinDbg\Symbol;SRV*D:\WinDbg\Symbol*http://msdl.microsoft.com/download/symbols
系统中相关文件路径示例:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\sos.dll
运行命令:
加载SOS文件
.load D:/WinDbg/4.0.30319.18408/X64/SOS.dll
查看所有线程
!threads
看看是哪个线程占用 CPU 时间过多
!runaway
切换到占用 CPU 时间过多的线程,查看调用堆栈,例如线程ID是80
~80 s
查看堆栈信息
!clrstack
分析错误:
!analyze -v
其他命令:
不知道哪个线程是.Net线程,在所有线程中运行 查看堆栈命令
~* e !CLRStack
保存模块
!saveModule d:/test1.dll!dumpstack
使用参考链接:
http://blog.csdn.net/kntao/article/details/7086616
http://blog.csdn.net/hurtmanzc/article/details/7980230
windbg命令学习:http://www.cnblogs.com/gaochundong/p/windbg_cheat_sheet.html