ExInitializeRundownProtectionCacheAware-Funktion (wdm.h)
Diese Routine initialisiert ein Cache-fähiges Rundownschutzobjekt.
Syntax
void ExInitializeRundownProtectionCacheAware(
[out] PEX_RUNDOWN_REF_CACHE_AWARE RunRefCacheAware,
[in] SIZE_T RunRefSize
);
Parameter
[out] RunRefCacheAware
Zeiger auf einen vom Aufrufer bereitgestellten Puffer, in dem die Routine eine undurchsichtige EX_RUNDOWN_REF_CACHE_AWARE Struktur zurückgibt. Weitere Informationen finden Sie unter Hinweise.
[in] RunRefSize
Gibt die Größe des Rundownschutzobjekts in Bytes an.
Rückgabewert
Keine
Bemerkungen
Rundownschutz ist ein Synchronisierungsmechanismus, der vom Windows-Kernel verwendet wird, um Ressourcen sicher zu sauber, auf die möglicherweise mehrere Threads zugreifen.
Diese Funktion ist für Szenarien optimiert, in denen die Zugriffsmuster auf eine geschützte Ressource cachefähig sind, was bedeutet, dass derselbe Thread wahrscheinlich wiederholt auf die Ressource zugreift und unterschiedliche Threads wahrscheinlich auf verschiedene Teile der Ressource zugreifen. Durch die Verwendung dieser Funktion anstelle von ExInitializeRundownProtection kann ein Treiber die Wahrscheinlichkeit von Cachekonflikten verringern, bei denen mehrere Threads um dieselben Cachezeilen konkurrieren, was zu Leistungseinbußen führt.
Diese Funktion wird in der Regel während der Initialisierungsphase eines Treibers verwendet, wenn sie die für den Betrieb benötigten Ressourcen ein richtet. Der Treiber ruft diese Funktion für jede Ressource auf, die durch cachefähigen Rundownschutz geschützt werden muss.
Die EX_RUNDOWN_REF_CACHE_AWARE-Struktur ist eine undurchsichtige Struktur, die zum Verwalten des Rundownschutzes verwendet wird. Der Aufrufer sollte zuerst ExSizeOfRundownProtectionCacheAware aufrufen, um die geeignete Größe für das Rundownschutzobjekt zu bestimmen. Diese Größe sollte dann zum Zuweisen eines Puffers für den RunRefCacheAware-Parameter verwendet und auch als RunRefSize-Parameter übergeben werden.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Server) | Windows Server 2003, Service Pack 1 |
Kopfzeile | wdm.h (einschließen von Wdm.h) |
IRQL | <= APC_LEVEL |
Weitere Informationen
ExAcquireRundownProtectionCacheAware
ExAcquireRundownProtectionCacheAwareEx
ExAllocateCacheAwareRundownProtection
ExFreeCacheAwareRundownProtection
ExReInitializeRundownProtectionCacheAware
ExReleaseRundownProtectionCacheAware
ExReleaseRundownProtectionCacheAwareEx
ExSizeOfRundownProtectionCacheAware