Function
GLibatomic_pointer_add
since: 2.30
Declaration [src]
gintptr
g_atomic_pointer_add (
void* atomic,
gssize val
)
Description [src]
Atomically adds val
to the value of 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 #gssize to #gintptr to add support for platforms with 128-bit pointers. This should not affect existing code.
Available since: 2.30