WinDbg常用情况(一)

1.WinDbg检测句柄泄露

!htrace –enable 开启句柄检测

!htrace –snapshot 创建进程句柄镜像

!htrace –diff获得当前进程句柄状态与创建进程句柄镜像时候的差异

Lsa handleLeak!ThreadProc1+0x00000037显示具体源码

2.WinDbg检测内存泄露

gflags.exe设置 Enable heap tagging

!heap –s 记录当前堆内存的现状

!heap –s 再次记录堆内存的状态

!heap -stat -h00970000 查看对应堆的具体信息

!heap -flt s 224 查看堆大小为224的堆块使用者

!heap -p -a 00971d20 查看堆引用的位置

Lsa 显示具体源码

3.WinDbg检测高CPU

!runaway 查看线程占用CPU时间

~2s 切换到2号线程

.frame /c  切换栈帧

4.WinDbg检测死锁

!locks查看所有锁信息

~*kv显示所有线程

RtlEnterCriticalSection 函数的第一个参数就是请求的锁地址

5.Windbg追踪异常

>kv

09a8f644 77ea7e7a 09a8f66c 77e861ae 09a8f674 KERNEL32!UnhandledExceptionFilter+0x2b5 D:/nt/private/windows/base/client/thread.c @ 1753].

>dd 09a8f66c

09a8f66c  09a8f738 09a8f754 09a8f698 77f8f45c

 .exr 09a8f738获得异常值

 .cxr 09a8f754 获得上下文记录

6.查看虚表

 x ole32!OpaqueDataInfo::vftable’ 显示虚表的地址

dds Address 自动搜索显示函数

6.查看getlasterror的值

!gle 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值