【问题标题】:WinDbg/SOS: Explanation of !SyncBlk outputWinDbg/SOS: !SyncBlk 输出说明
【发布时间】:2010-02-04 20:35:43
【问题描述】:

我正在查找由 SOS 的 !SyncBlk 命令生成的输出的描述。

特别是我在“MonitorHeld”列上没有找到有用的解释。此列显示了一系列故障转储中的高值。

例子:

0:000> !SyncBlk
Index         SyncBlock MonitorHeld Recursion Owning Thread Info          SyncBlock Owner
   44 0000000005a5c228            1         1 000000000e7a6740  2304 273   000000019f858cd0 System.Object
   48 000000000579bae8            1         1 000000000e7a72e0  2370 275   000000015f999900 System.Object
   52 000000000579b9c8            1         1 0000000011bbd3b0  1e98 295   00000000ff89fe08 System.Object
   54 000000000579b938            1         1 000000000e7a38c0  1be4 249   000000013f8aa888 System.Object
  108 0000000005a5bfe8            1         1 000000000e79f300  224c 242   00000000ff8a5828 System.Object
  110 0000000005a5c078            1         1 000000000e79ca50  2290 262   000000015f9a8020 System.Object
  112 0000000005a5c108            1         1 0000000011bb70e0  1d38 236   000000015f99e408 System.Object
  114 000000000579b620            1         1 0000000011bb93c0  1884 304   00000001bf974a90 System.Object
  124 0000000005a44d48            1         1 000000000e7a6170  2300 272   000000019f853fe8 System.Object
  146 0000000005a44688           99         1 000000000588cbf0  13e0  38   000000017f71c4f8 System.Object
  155 0000000005a44f88            1         1 0000000011bba530  2274 301   000000019f82f120 System.Object
  157 0000000005a45018            1         1 0000000011bbf0c0  2034 290   000000015f952980 System.Object

谁能解释“MonitorHeld”列中的“99”?

有没有人提供此命令的完整参考文档的链接?

谢谢, 亚历克斯

【问题讨论】:

    标签: c# .net debugging windbg sos


    【解决方案1】:

    MonitorHeld 指的是该特定 SyncBlk 持有多少个监视器。

    每次对锁发生争用时,都会有 1 个所有者持有 syncblk。锁上的每个服务员持有 2 个。

    您的 99 表示您有一个对象“拥有”锁,还有 49 个对象在等待锁。

    我找到的!syncblk最好的讨论和详细解释是this one by Tess Ferrandez

    【讨论】:

      【解决方案2】:

      除了 Reed 提到的之外,您还可以使用 SOSEX.dll 扩展的 !dlk 命令来检查死锁。

      【讨论】:

      猜你喜欢
      • 2011-12-05
      • 2012-06-12
      • 1970-01-01
      • 1970-01-01
      • 2011-05-21
      • 2011-02-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多