Funzione NdisReleaseRWLock (ndis.h)

La funzione NdisReleaseRWLock rilascia un blocco di lettura/scrittura usato dal chiamante per ottenere l'accesso alle risorse condivise tra thread driver.

Sintassi

void NdisReleaseRWLock(
  [in] PNDIS_RW_LOCK_EX Lock,
  [in] PLOCK_STATE_EX   LockState
);

Parametri

[in] Lock

Puntatore a una variabile NDIS_RW_LOCK_EX opaca che rappresenta un blocco. Il chiamante può usare questo blocco per ottenere l'accesso in scrittura o in lettura alle risorse condivise tra thread driver non ISR.

[in] LockState

Puntatore a una variabile LOCK_STATE_EX opaca che tiene traccia dello stato del blocco. Questa variabile esiste nell'intervallo tra i tempi in cui il chiamante ottiene e rilascia il blocco. Il chiamante deve usare una variabile di tipo diversa LOCK_STATE_EX per ogni tentativo eseguito per ottenere il blocco dallo stesso thread del driver non ISR.

Valore restituito

nessuno

Osservazioni

I driver NDIS chiamano la funzione NdisReleaseRWLock per rilasciare un blocco di lettura/scrittura ottenuto in precedenza chiamando
NdisAcquireRWLockRead o Funzione NdisAcquireRWLockWrite .

Un driver deve ottenere un blocco di lettura/scrittura prima che il driver possa chiamare NdisReleaseRWLock. Ogni chiamata per ottenere un blocco richiede una chiamata reciproca a NdisReleaseRWLock.

L'acquisizione di un NDIS_RW_LOCK_EX è affinizzata con il processore corrente. I driver devono chiamare NdisReleaseRWLock sullo stesso processore che ha effettuato la chiamata corrispondente a NdisAcquireRWLockRead o NdisAcquireRWLockWrite.

NdisReleaseRWLock ripristina l'IRQL originale usato dal chiamante prima che il blocco sia stato ottenuto.

Requisiti

Requisito Valore
Client minimo supportato Supportato in NDIS 6.20 e versioni successive.
Piattaforma di destinazione Universale
Intestazione ndis.h (include Ndis.h)
Libreria Ndis.lib
IRQL DISPATCH_LEVEL

Vedi anche

LOCK_STATE_EX

NDIS_RW_LOCK_EX

NdisAcquireRWLockRead

NdisAcquireRWLockWrite