Condividi tramite


Funzione ExAcquireRundownProtectionEx (wdm.h)

La routine ExAcquireRundownProtectionEx tenta di acquisire la protezione di run-down su un oggetto condiviso in modo che il chiamante possa accedere in modo sicuro all'oggetto.

Sintassi

BOOLEAN ExAcquireRundownProtectionEx(
  [in, out] PEX_RUNDOWN_REF RunRef,
  [in]      ULONG           Count
);

Parametri

[in, out] RunRef

Puntatore a una struttura EX_RUNDOWN_REF inizializzata da una chiamata precedente alla routine ExInitializeRundownProtection. Le routine di protezione di run-down utilizzano questa struttura per tenere traccia dello stato di esecuzione dell'oggetto condiviso associato. Questa struttura è opaca per i driver.

[in] Count

Quantità in base alla quale incrementare il numero di istanze di run-down dell'oggetto. Il conteggio viene incrementato solo se la routine restituisce TRUE. Per altre informazioni, vedere Osservazioni

Valore restituito

exAcquireRundownProtectionEx restituisce TRUE se la routine acquisisce correttamente la protezione di run-down per il chiamante. In caso contrario, restituisce FALSE. Un valore restituito di FALSE indica che l'esecuzione dell'oggetto è stata avviata e che l'oggetto deve essere considerato non valido.

Osservazioni

Per accedere in modo sicuro a un oggetto condiviso, un driver chiama ExAcquireRundownProtectionEx per acquisire la protezione di run-down sull'oggetto.

Il parametro RunRef punta a una struttura EX_RUNDOWN_REF che tiene traccia dello stato di esecuzione dell'oggetto associato. Queste informazioni sullo stato includono un conteggio delle istanze di protezione di run-down attualmente applicate all'oggetto. Il ExAcquireRundownProtectionEx e ExReleaseRundownProtectionEx incrementa e decrementa questo conteggio in base a importi arbitrari. Due routine correlate, ExAcquireRundownProtection e ExReleaseRundownProtection, incrementa e decrementa questo conteggio di uno.

Purché il blocco di run-down stesso non sia di pagina, questa funzione può essere chiamata in DISPATCH_LEVEL.

Per altre informazioni, vedere Run-Down Protection.

Fabbisogno

Requisito Valore
client minimo supportato Disponibile a partire da Windows Server 2003.
piattaforma di destinazione Universale
intestazione wdm.h (include Wdm.h)
libreria NtosKrnl.lib
dll NtosKrnl.exe
IRQL <= DISPATCH_LEVEL (vedere la sezione Note)
regole di conformità DDI HwStorPortProhibitedDDIs(storport)

Vedere anche

EX_RUNDOWN_REF

exAcquireRundownProtection

ExInitializeRundownProtection

exReleaseRundownProtection

ExReleaseRundownProtectionEx