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 或 NdisAcquireRWLockRead進行對應呼叫的相同處理器上呼叫NdisReleaseRWLockWLock。
NdisReleaseRWLock 還原其呼叫端在取得鎖定之前所使用的原始 IRQL。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | NDIS 6.20 和更新版本支援。 |
目標平臺 | 普遍 |
標頭 | ndis.h (包括 Ndis.h) |
連結庫 | Ndis.lib |
IRQL | DISPATCH_LEVEL |