【发布时间】:2019-05-19 18:50:14
【问题描述】:
在调试转储文件时,我需要定期检查锁,为此我使用windbg 扩展命令!locks。当一切顺利时,它会提供如下输出:
CritSec +54a8a8 at 0054a8a8
WaiterWoken No
LockCount 0
RecursionCount 1
OwningThread 13d8
EntryCount 0
ContentionCount 0
*** Locked
CritSec +b73a8d at 00135e8d
WaiterWoken No
LockCount 0
RecursionCount 1
OwningThread 55f3
EntryCount 0
ContentionCount 0
*** Locked
...
Scanned 662 critical sections
但是,有时我会收到以下错误消息:
Stopped scanning because of problem reading critical section debug info
Scanned 7 critical sections
是否有可能获得一些信息? (例如,critical section debug info 在哪里,如果没有!locks 命令,我如何阅读它,...)
【问题讨论】:
-
您可以尝试
!cs -s -l -o,但您可能会看到同样的情况,您可能需要使用 glags 启用用户模式堆栈跟踪!gflag +ust -
@EdChum:感谢您的快速回复。请把它写成答案,我会接受的。显然
!locks是!cs -s -l -o命令的摘要。
标签: c++ debugging windbg locks