Performs an atomic bitwise 'or' 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.
In GLib 2.80, the return type was changed from gsize to guintptr to add
support for platforms with 128-bit pointers. This should not affect existing
code.
Parameters
atomic: any
a pointer to a gpointer-sized value
val: number
the value to 'or'
Returns never
the value of atomic before the operation, unsigned
Performs an atomic bitwise 'or' of the value of
atomicandval, storing the result back inatomic.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
atomichas avolatilequalifier, this is a historical artifact and the pointer passed to it should not bevolatile.In GLib 2.80, the return type was changed from
gsizetoguintptrto add support for platforms with 128-bit pointers. This should not affect existing code.