Condividi tramite


Funzione ExWaitForRundownProtectionReleaseCacheAware (wdm.h)

La routine ExWaitForRundownProtectionReleaseCacheAware attende fino a quando tutti i driver che hanno già concesso la protezione con riconoscimento della cache completano gli accessi dell'oggetto condiviso.

Sintassi

void ExWaitForRundownProtectionReleaseCacheAware(
  [in, out] PEX_RUNDOWN_REF_CACHE_AWARE RunRef
);

Parametri

[in, out] RunRef

Puntatore a una struttura EX_RUNDOWN_REF_CACHE_AWARE inizializzata da una chiamata precedente a ExAllocateCacheAwareRundownProtection o ExInitializeRundownProtectionCacheAware. Le routine di protezione con riconoscimento della cache usano questa struttura per tenere traccia dello stato di esecuzione dell'oggetto condiviso associato. Questa struttura è opaca per i driver.

Valore restituito

nessuno

Osservazioni

Questa routine viene chiamata dal driver proprietario di un oggetto che risiede nella memoria condivisa e a cui si accede da altri driver. Prima di eliminare questo oggetto, il driver proprietario deve chiamare questa routine per attendere il completamento di eventuali accessi in sospeso dell'oggetto. Dopo aver restituito ExWaitForRundownProtectionReleaseCacheAware , il driver proprietario può eliminare in modo sicuro l'oggetto.

Dopo che viene chiamato ExWaitForRundownProtectionReleaseCacheAware , la routine ExAcquireRundownProtectionCacheAware non concede ulteriori richieste per la protezione del run-down con riconoscimento della cache dai driver che tentano di accedere all'oggetto condiviso.

La routine attende di restituire fino a quando tutti i driver che in precedenza avevano concesso la protezione con riconoscimento della cache completano l'accesso all'oggetto. Al termine di ogni driver, chiama la routine ExReleaseRundownProtectionCacheAware per rilasciare la protezione con riconoscimento della cache acquisita in precedenza. Al termine di tutti gli accessi in sospeso, ExWaitForRundownProtectionReleaseCacheAware restituisce e l'oggetto può essere eliminato in modo sicuro.

Se viene chiamato ExWaitForRundownProtectionReleaseCacheAware quando tutti i driver che sono stati concessi in precedenza hanno già completato l'accesso all'oggetto condiviso, la routine modifica lo stato dell'oggetto da eseguire e restituisce immediatamente, senza attendere.

Se ExWaitForRundownProtectionReleaseCacheAware viene chiamato per eseguire un oggetto condiviso, ma il parametro RunRef indica che questo oggetto è già in esecuzione, la chiamata non ha alcun effetto ma non viene considerata come errore.

Per altre informazioni, vedere Protezione con run-down con riconoscimento della cache.

Requisiti

Requisito Valore
Server minimo supportato Windows Server 2003, Service Pack 1
Intestazione wdm.h (include Wdm.h)
Regole di conformità DDI HwStorPortProhibitedDDDIs(storport), SpNoWait(storport)

Vedi anche

ExAcquireRundownProtectionCacheAware

ExAcquireRundownProtectionCacheAwareEx

ExAllocateCacheAwareRundownProtection

ExFreeCacheAwareRundownProtection

ExInitializeRundownProtectionCacheAware

ExReInitializeRundownProtectionCacheAware

ExReleaseRundownProtectionCacheAware

ExReleaseRundownProtectionCacheAwareEx

ExRundownCompletedCacheAware

ExSizeOfRundownProtectionCacheAware