[ CCode ( cname = "gpseq_atomic_int64_xor" ) ]
public uint64 atomic_int64_xor (ref uint64 atomic, uint64 val)
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.
atomic |
a pointer to a int64 or uint64 |
val |
the value to 'xor' |
the value of atomic before the operation, unsigned |