在Windows中,是否有工具来监控进程同步对象的状态?即
更好的是,记录哪个线程做了什么,例如。 “线程#5421信号事件 - testevt”
答案 0 :(得分:6)
Handle用法:handle -s ==> Print count of each type of handle open.
<强> [编辑] 强>:
如何使用Process Explorer监控进程同步对象的状态。
打开Process Explorer
Show Lower Pane
(或按Ctrl+L
)。这将显示所有同步对象。 (例如:myEvent)这会带来同步对象的详细信息。
在Details
标签中,您可以看到
Event Info
(如果同步对象是事件):提供有关的信息
state(是否发信号通知同步对象)
Semaphore info
(如果synch对象是信号量):
提供信号量的计数。
答案 1 :(得分:1)
看看英特尔的ThreadChecker和Parallel Studio。他们的大多数工具都位于Visual Studio之上。
http://software.intel.com/en-us/intel-vtune/
答案 2 :(得分:1)
Thread Validator执行您所描述的内容。
监视线程,锁的状态,各个线程对象。比英特尔的线程检查器快得多,但细节水平不同。
答案 3 :(得分:0)
Windbg可能会有所帮助,但你必须学习如何使用它。