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 atomischer Vorgang auf den angegebenen Wert 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 erfolgte.
Hinweise
InterlockedExchange sollte anstelle von ExInterlockedExchangeUlong verwendet werden, da es schneller und effizienter ist.
InterlockedExchange wird vom Compiler inline implementiert, wenn dies sinnvoll und möglich ist. Es erfordert keine Drehsperre und kann daher sicher für ausgelagerte Daten verwendet werden.
Ein Aufruf der InterlockedExchange-Routine ist nur in Bezug auf andere interlockedXxx-Aufrufe atomar.
Ineinandergreifende Vorgänge können nicht für nicht zwischengespeicherten Arbeitsspeicher verwendet werden.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar ab Windows 2000. |
Zielplattform | Universell |
Header | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h, Miniport.h) |
Bibliothek | OneCoreUAP.lib auf Windows 10 |
IRQL | Beliebige Ebene |