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) |