Condividi tramite


Funzione ExAcquireSpinLockExclusiveAtDpcLevel (wdm.h)

La routine ExAcquireSpinLockExclusiveAtDpcLevel acquisisce un blocco spin per l'accesso esclusivo da un chiamante già in esecuzione in IRQL >= DISPATCH_LEVEL.

Sintassi

void ExAcquireSpinLockExclusiveAtDpcLevel(
  [in, out] PEX_SPIN_LOCK SpinLock
);

Parametri

[in, out] SpinLock

Puntatore al blocco spin da acquisire. Il chiamante non deve già possedere questo blocco di rotazione.

Valore restituito

nessuno

Osservazioni

Nella voce di questa routine, il chiamante deve essere in esecuzione in IRQL >= DISPATCH_LEVEL. Questa routine non modifica irQL.

Per rilasciare il blocco di selezione, il driver chiama la routine ExReleaseSpinLockExclusiveFromDpcLevel .

Un blocco di rotazione è una variabile a 32 bit di tipo EX_SPIN_LOCK. Il driver deve allocare lo spazio di archiviazione per il blocco spin e inizializzare il blocco di rotazione su zero. Questa risorsa di archiviazione deve trovarsi nella memoria dello spazio di sistema non di paging.

Il chiamante deve contenere il blocco di rotazione solo brevemente prima di rilasciarlo. Per altre informazioni, vedere Introduzione ai blocchi di selezione.

L'acquisizione ricorsiva di un blocco spin causa deadlock e non è consentita.

Requisiti

Requisito Valore
Intestazione wdm.h
IRQL IRQL >= DISPATCH_LEVEL

Vedi anche

ExReleaseSpinLockExclusiveFromDpcLevel