InterlockedXor8 function (winnt.h)
Performs an atomic XOR operation on the specified char values. The function prevents more than one thread from using the same variable simultaneously.
Syntax
char InterlockedXor8(
[in, out] char volatile *Destination,
[in] char Value
);
Parameters
[in, out] Destination
A pointer to the first operand. This value will be replaced with the result of the operation.
[in] Value
The second operand.
Return value
The function returns the original value of the Destination parameter.
Remarks
The interlocked functions provide a simple mechanism for synchronizing access to a variable that is shared by multiple threads. This function is atomic with respect to calls to other interlocked functions.
For the Intel Itanium-based systems and x64 architectures, this function is implemented using the compiler intrinsic. For the x86 architecture, use the _InterlockedXor8 compiler intrinsic directly.
This function generates a full memory barrier (or fence) to ensure that memory operations are completed in order.
Itanium-based systems: For performance-critical applications, use InterlockedXor8Acquire or InterlockedXor8Release instead.
Requirements
Requirement | Value |
---|---|
Target Platform | Windows |
Header | winnt.h (include Windows.h) |