WinDbg调试
设置符号等环境
cache会在本地指定目录缓存symbols |
调试dump文件
- 设置VC编译选项,勾选生成MAP和Debug Info、Progma Datebase:
- 将编译生成的Release目录中的pdb、map文件保存起来,以后调试会用到:
- 运行程序,单击确定按钮出现异常后自动重启,并创建一个Log文件夹,里面生成dump文件:
我们打开WinDbg,设置一下相关路径
A、设置pdb路径(File \ Symbol File Path)
B、设置源代码路径( File \ Source File Path )
C、设置Exe路径( File \ Image File Path )
- 用WiinDbg打开dump文件(File \ Open Crash Dump)
- 输入命令!analyze -v,等待几秒后会打印出错误信息,函数调用栈如下图:
获取帮助列表
.hh
调试 exe cpu 占用率高
使用 windbg 运行程序
查看线程池 !threadpool
查看哪个线程占用 cpu 时间过多 !runaway
切换线程 0
~0 s
查看栈
!clrstack
波形符(~) 命令显示指定线程或当前进程中的所有线程的信息