atomicIntAdd

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.

Before version 2.30, this function did not return a value (but glib.global.atomicIntExchangeAndAdd did, and had the same meaning).

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

int
atomicIntAdd
(
ref int atomic
,
int val
)

Parameters

atomic int

a pointer to a #gint or #guint

val int

the value to add

Return Value

Type: int

the value of atomic before the add, signed