windbg wt命令

0x00

最近好忙,好久没写博客了,更新一波。
Windbg中的wt命令可以简便快速追踪函数调用流程,命令格式如下:
在这里插入图片描述
我在win10 x64 19h1 release 上测试 CoInitializeEx 的调用流程:
在这里插入图片描述
使用命令: wt =3e13d4 3e13da
命令会显示两部分信息:树形显示的调用堆栈与每个被调用子函数的指令数与调用次数。
在这里插入图片描述

0x01

Wt命令除了追踪调用流程以外我认为在两个方面有一定作用:

  1. 确定调用失败大致原因与范围。在调用一些API时经常会发生错误,如果直接跟API会比较烦,存粹体力活。使用wt可以比较简单地看出大致在哪个子函数失败的,那么可以下断点,快速run到出错代码附近;
  2. Wt命令可以作为简单的性能调试工具。因为wt命令列出了指令数与调用次数,因此可以作为性能调试的简单参考。但是有几点要注意:Wt命令可以作为简单的性能调试工具。因为wt命令列出了指令数与调用次数,因此可以作为性能调试的简单参考。但是有几点要注意:
    1) 存在IO性能瓶颈的程序不适合,比较适合CPU密集型程序;
    2) Wt命令使用的是nt自带的event trace,会对程序本身的执行造成一定影响,因此如果程序会一些扰动比较敏感的话也不太适合。

0x02

全量打印的wt命令输出比较烦杂,可以使用一些filter参数来过滤打印,具体看msdn。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值