Condividi tramite


Funzione ExAcquireRundownProtectionEx (wdm.h)

La routine ExAcquireRundownProtectionEx tenta di acquisire la protezione da run-down in 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 da run-down usano 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 aumentare il numero di istanze 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.

Commenti

Per accedere in modo sicuro a un oggetto condiviso, un driver chiama ExAcquireRundownProtectionEx per acquisire la protezione in fase di esecuzione nell'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 numero di istanze di protezione da run-down attualmente effettive sull'oggetto. La routine ExAcquireRundownProtectionEx e ExReleaseRundownProtectionEx incrementa e decrementa questo conteggio in base a importi arbitrari. Due routine correlate, ExAcquireRundownProtection e ExReleaseRundownProtection, incrementa e decrementa questo conteggio per uno.

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

Per altre informazioni, vedere Run-Down Protection.

Requisiti

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 Osservazioni)
Regole di conformità DDI HwStorPortProhibitedDDDIs(storport)

Vedi anche

EX_RUNDOWN_REF

ExAcquireRundownProtection

ExInitializeRundownProtection

ExReleaseRundownProtection

ExReleaseRundownProtectionEx