Windbg常用命令系列---显示线程时间(.ttime)

.ttime (Display Thread Times)

ttime命令显示线程的创建时间,以及它在内核模式和用户模式下运行的时间。

.ttime 

环境

Modes

user mode only

Targets

live, crash dump

Platforms

x86 only

说明

此命令仅在用户模式下工作。在内核模式下你应该使用!thread。只要使用/mt或/ma选项创建用户模式的小型转储,此命令就可以使用;

0:000:x86> .ttime
Created: Thu Apr  9 09:36:08.130 2020 (UTC + 8:00)
Kernel:  0 days 0:01:05.875
User:    0 days 0:01:09.859

.ttime 可以查看当前线程的运行时间(用户态运行时间和内核态运行时间)。但是 .ttime 有个不足之处——没有输出相关的线程标识。我们需要根据其它信息来获取当前线程的标识。

如果想查看所有线程的运行时间怎么办呢?当然可以手动切换到另外一个线程,然后执行 .ttime 。如果线程数量很多的话,这可是个体力活。不要怕,我们可以通过命令 ~*e .ttime 来获取每个线程的运行时间。因为 .ttime 输出结果中没有线程标识,我们需要执行命令 ~*e ? $tid;.ttime 把对应的 线程ID 一起输出。

0:000:x86> ~*e ? $tid;.ttime 
Evaluate expression: 16904 = 00004208
Created: Thu Apr  9 09:36:08.130 2020 (UTC + 8:00)
Kernel:  0 days 0:01:05.875
User:    0 days 0:01:09.859
Evaluate expression: 9256 = 00002428
Created: Thu Apr  9 09:36:08.461 2020 (UTC + 8:00)
Kernel:  0 days 0:00:00.000
User:    0 days 0:00:00.000
Evaluate expression: 6268 = 0000187c
Created: Thu Apr  9 09:36:08.462 2020 (UTC + 8:00)
Kernel:  0 days 0:00:00.000
User:    0 days 0:00:00.000
Evaluate expression: 11704 = 00002db8
Created: Thu Apr  9 09:36:08.469 2020 (UTC + 8:00)
Kernel:  0 days 0:00:00.000
User:    0 days 0:00:00.000
Evaluate expression: 9196 = 000023ec
Created: Thu Apr  9 09:36:08.506 2020 (UTC + 8:00)
Kernel:  0 days 0:00:00.000
User:    0 days 0:00:00.000
Evaluate expression: 15868 = 00003dfc
Created: Thu Apr  9 09:36:08.506 2020 (UTC + 8:00)
Kernel:  0 days 0:00:00.015
User:    0 days 0:00:00.000
上一篇:数据分析函数


下一篇:实验