InterlockedExchange-Funktion (wdm.h)
Die InterlockedExchange Routine legt eine ganzzahlige Variable auf einen bestimmten Wert als atomischen Vorgang fest.
Syntax
LONG InterlockedExchange(
[in, out] LONG volatile *Target,
[in] LONG Value
);
Parameter
[in, out] Target
Ein Zeiger auf eine Variable, die als Atomoperation auf den angegebenen Value festgelegt werden soll.
[in] Value
Gibt den Wert an, auf den die Variable festgelegt wird.
Rückgabewert
InterlockedExchange gibt den Wert der Variablen bei Target zurück, wenn der Aufruf aufgetreten ist.
Bemerkungen
InterlockedExchange sollte anstelle von ExInterlockedExchangeUlongverwendet werden, da es sowohl schneller als auch effizienter ist.
InterlockedExchange wird nach Bedarf und möglich vom Compiler inline implementiert. Es ist keine Drehsperre erforderlich und kann daher sicher auf seitenfähigen Daten verwendet werden.
Ein Aufruf von InterlockedExchange Routine ist nur in Bezug auf andere InterlockedXxx-Aufrufe atomar.
Interlocked-Vorgänge können nicht für nicht zwischengespeicherten Arbeitsspeicher verwendet werden.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Ab Windows 2000 verfügbar. |
Zielplattform- | Universal |
Header- | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h, Miniport.h) |
Library | OneCoreUAP.lib unter Windows 10 |
IRQL- | Beliebige Ebene |