Freigeben über


InterlockedXor8-Funktion (winnt.h)

Führt einen atomaren XOR-Vorgang für die angegebenen Zeichenwerte aus . Die Funktion verhindert, dass mehrere Threads dieselbe Variable gleichzeitig verwenden.

Syntax

char InterlockedXor8(
  [in, out] char volatile *Destination,
  [in]      char          Value
);

Parameter

[in, out] Destination

Ein Zeiger auf den ersten Operanden. Dieser Wert wird durch das Ergebnis des Vorgangs ersetzt.

[in] Value

Der zweite Operand.

Rückgabewert

Die Funktion gibt den ursprünglichen Wert des Zielparameters zurück.

Hinweise

Die verriegelten Funktionen bieten einen einfachen Mechanismus zum Synchronisieren des Zugriffs auf eine Variable, die von mehreren Threads gemeinsam genutzt wird. Diese Funktion ist in Bezug auf Aufrufe anderer ineinander verzahnter Funktionen atomar.

Für intel Itanium-basierte Systeme und x64-Architekturen wird diese Funktion mithilfe des intrinsischen Compilers implementiert. Verwenden Sie für die x86-Architektur den intrinsischen _InterlockedXor8 Compiler direkt.

Diese Funktion generiert eine vollständige Speicherbarriere (oder einen Zaun), um sicherzustellen, dass Speichervorgänge in der richtigen Reihenfolge abgeschlossen werden.

Itanium-basierte Systeme: Verwenden Sie für leistungskritische Anwendungen stattdessen InterlockedXor8Acquire oder InterlockedXor8Release .

Hinweis Diese Funktion wird auf Windows RT-basierten Systemen unterstützt.
 

Anforderungen

   
Zielplattform Windows
Kopfzeile winnt.h (Einschließen von Windows.h)

Weitere Informationen

Zugriff auf verriegelte Variablen

InterlockedXor

InterlockedXor16

InterlockedXor16Acquire

InterlockedXor16NoFence

InterlockedXor16Release

InterlockedXor64

InterlockedXor64Acquire

InterlockedXor64NoFence

InterlockedXor64Release

InterlockedXor8Acquire

InterlockedXor8NoFence

InterlockedXor8Release

InterlockedXorAcquire

InterlockedXorNoFence

InterlockedXorRelease

Synchronisierungsfunktionen