atomicIntXor

Performs an atomic bitwise 'xor' of the value of atomic and val, storing the result back in atomic.

Think of this operation as an atomic version of { tmp = *atomic; *atomic ^= val; return tmp; }.

This call acts as a full compiler and hardware memory barrier.

While atomic has a volatile qualifier, this is a historical artifact and the pointer passed to it should not be volatile.

uint
atomicIntXor
(
ref uint atomic
,
uint val
)

Parameters

atomic uint

a pointer to a #gint or #guint

val uint

the value to 'xor'

Return Value

Type: uint

the value of atomic before the operation, unsigned