Condividi tramite


Funzione ExAcquireSpinLockExclusiveAtDpcLevel (wdm.h)

La routine exAcquireSpinLockExclusiveAtDpcLevel acquisisce un di 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 di selezione da acquisire. Il chiamante non deve già possedere questo blocco di selezione.

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 routineExReleaseSpinLockExclusiveFromDpcLevel.

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

Il chiamante deve tenere premuto il blocco di rotazione solo brevemente prima di rilasciarlo. Per altre informazioni, vedere Introduction to Spin Locks.

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

Fabbisogno

Requisito Valore
intestazione wdm.h
IRQL IRQL >= DISPATCH_LEVEL

Vedere anche

ExReleaseSpinLockExclusiveFromDpcLevel