NdisReleaseRWLock 函式 (ndis.h)
NdisReleaseRWLock 函式會釋放讀取/寫入鎖定,讓呼叫端用來存取驅動程序線程之間共用的資源。
語法
void NdisReleaseRWLock(
[in] PNDIS_RW_LOCK_EX Lock,
[in] PLOCK_STATE_EX LockState
);
參數
[in] Lock
代表鎖定之不透明 NDIS_RW_LOCK_EX 變數的指標。 呼叫端可以使用此鎖定來取得非ISR驅動程式線程之間共用之資源的寫入或讀取許可權。
[in] LockState
追蹤鎖定狀態之不透明 LOCK_STATE_EX 變數的指標。 此變數存在於呼叫端取得和釋放鎖定之間的間隔。 呼叫端必須針對每次嘗試從相同的非ISR驅動程式線程取得鎖定時,使用不同的類型變數LOCK_STATE_EX。
傳回值
無
備註
NDIS 驅動程式會呼叫 NdisReleaseRWLock 函式,以釋放先前透過呼叫 取得的讀取/寫入鎖定
NdisAcquireRWLockRead 或 NdisAcquireRWLockWrite 函式。
驅動程式必須先取得讀取/寫入鎖定,驅動程式才能呼叫 NdisReleaseRWLock。 取得鎖定的每個呼叫都需要 對 NdisReleaseRWLock 進行相互呼叫。
取得 NDIS_RW_LOCK_EX 會與目前的處理器同質化。 驅動程式必須在對 NdisAcquireRWLockRead 或 NdisAcquireRWLockWrite 進行對應呼叫的相同處理器上呼叫 NdisReleaseRWLock。
NdisReleaseRWLock 會還原其呼叫端在取得鎖定之前所使用的原始 IRQL。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | NDIS 6.20 和更新版本支援。 |
目標平台 | Universal |
標頭 | ndis.h (包含 Ndis.h) |
程式庫 | Ndis.lib |
IRQL | DISPATCH_LEVEL |