简单整理一个测试Demo,抓取dump并验证,步骤如下:
- Symbol File Path:SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols
Procdump每20秒抓取一次,连续抓三个:procdump -ma -s 20 -n 3 TestCPU.exe
Ctrl + D 打开刚才收集的dump文件;
加载sos,命令:.loadby sos clr
检查所有线程的堆栈:~* e!clrstack
查看线程阻塞:!syncblk
查找具体的阻塞程序,问题解决。