如何检查线程是否在等待?

时间:2014-01-27 13:23:08

标签: windows multithreading profiling wait

为了进行性能分析和监视,我想知道一个线程当前是否处于活动状态(使用CPU时间),或者它是在等待还是正在休眠。

有没有办法找出某个线程当前是否处于各种Windows内核等待函数之一?

从WaitForSingleObject到各种互斥,睡眠,临界区,IOCP GetQueuedCompletionStatus和其他I / O函数等,有很多函数可以导致线程等待。

有没有一种标准方法可以知道线程是否在等待?

1 个答案:

答案 0 :(得分:1)

Wait Chain Traversal API可以满足您的要求。还有更多。