共用方式為


!ndiskd.ndisrwlock

!ndiskd.ndisrwlock 延伸模組會顯示NDIS_RW_LOCK_EX鎖定結構的相關信息。

!ndiskd.ndisrwlock -handle <x>

參數

-處理
必要。 鎖定結構的句柄。

DLL

Ndiskd.dll

範例

如果您建立自己的 RW 鎖定,而且想要檢查它,請使用 !ndiskd.ndisrwlock 擴充功能。 若要取得 RW 鎖定的句柄,請使用 poi 命令來取值驅動程式鎖定的位址。 下列代碼段示範如何查看範例時 TCIPIP 通訊協定所使用的鎖定。

0: kd> !ndiskd.ndisrwlock poi(tcpip!gAleHashtableLock)


NDIS READ-WRITE LOCK

    Allocated by       [NDIS generic object]
    Exclusive access   Not acquired
    Read-only access   0 references

    Set a breakpoint on acquire/release

若要觀察使用此 RW 鎖定的驅動程式,請按下 RW 鎖定詳細資料底部的 [在取得/發行時設定斷點] 連結。 設定斷點之後,請輸入 g 命令,讓偵錯者機器執行並叫用斷點。

0: kd> ba r4 ffffe00bc3fc22f8
0: kd> g
Breakpoint 0 hit
nt!KeTestSpinLock+0x3:
fffff802`0d69eb53 4885c0          test    rax,rax

現在您可以重新執行相同的 !ndiskd.ndisrwlock 命令,以查看此 RW 鎖定具有一個只讀存取參考。

0: kd> !ndiskd.ndisrwlock poi(tcpip!gAleHashtableLock)


NDIS READ-WRITE LOCK

    Allocated by       [NDIS generic object]
    Exclusive access   Not acquired
    Read-only access   1 reference

    Set a breakpoint on acquire/release

另請參閱

網路驅動程序設計指南

Windows Vista 和更新版本的網路參考

偵錯網路堆疊

NDIS 延伸模組 (Ndiskd.dll)

!ndiskd.help

NDIS_RW_LOCK_EX