Funzione ExInitializeRundownProtectionCacheAware (wdm.h)
Questa routine inizializza un oggetto protezione rundown compatibile con la cache.
Sintassi
void ExInitializeRundownProtectionCacheAware(
[out] PEX_RUNDOWN_REF_CACHE_AWARE RunRefCacheAware,
[in] SIZE_T RunRefSize
);
Parametri
[out] RunRefCacheAware
Puntatore a un buffer fornito dal chiamante in cui la routine restituisce una struttura EX_RUNDOWN_REF_CACHE_AWARE opaca. Per altre informazioni, vedere La sezione Osservazioni.
[in] RunRefSize
Specifica le dimensioni, in byte, dell'oggetto protezione rundown.
Valore restituito
Nessuno
Osservazioni
La protezione del rundown è un meccanismo di sincronizzazione usato dal kernel di Windows per pulire in modo sicuro le risorse a cui è possibile accedere da più thread.
Questa funzione è ottimizzata per gli scenari in cui i modelli di accesso a una risorsa protetta sono in grado di essere consapevoli della cache, vale a dire che lo stesso thread può accedere ripetutamente alla risorsa e che è probabile che diversi thread accingano a diverse parti della risorsa. Usando questa funzione anziché ExInitializeRundownProtection, un driver può ridurre la probabilità di contesa della cache, in cui più thread competono per le stesse righe della cache, causando una riduzione delle prestazioni.
Questa funzione viene in genere usata durante la fase di inizializzazione di un driver, quando configura le risorse necessarie per funzionare. Il driver chiama questa funzione per ogni risorsa che deve essere protetta dalla protezione del rundown compatibile con la cache.
La struttura EX_RUNDOWN_REF_CACHE_AWARE è una struttura opaca usata per gestire la protezione del rundown. Il chiamante deve prima chiamare ExSizeOfRundownProtectionCacheAware per determinare le dimensioni appropriate per l'oggetto protezione rundown. Questa dimensione deve quindi essere usata per allocare un buffer per il parametro RunRefCacheAware e passato anche come parametro RunRefSize.
Fabbisogno
Requisito | Valore |
---|---|
server minimo supportato | Windows Server 2003, Service Pack 1 |
intestazione | wdm.h (include Wdm.h) |
IRQL | <= APC_LEVEL |
Vedere anche
ExAcquireRundownProtectionCacheAware
ExAcquireRundownProtectionCacheAwareEx
exAllocateCacheAwareRundownProtection
ExFreeCacheAwareRundownProtection
ExReInitializeRundownProtectionCacheAware
ExReleaseRundownProtectionCacheAware
ExReleaseRundownProtectionCacheAwareEx
ExSizeOfRundownProtectionCacheAware