qb_atomic_int_exchange_and_add - Man Page
Atomically adds val to the integer pointed to by atomic.
Synopsis
#include <qb/qbatomic.h> int32_t qb_atomic_int_exchange_and_add( volatile int32_t QB_GNUC_MAY_ALIAS *atomic, /* a pointer to an integer */ int32_t val /* the value to add to *atomic */ );
Params
atomic a pointer to an integer
val the value to add to *atomic
Description
It returns the value of *atomic just before the addition took place. Also acts as a memory barrier.
Return Value
the value of *atomic before the addition.
See Also
qb_atomic_int_set(3), qb_atomic_int_compare_and_exchange(3), qb_atomic_int_get(3), qb_atomic_int_add(3), qb_atomic_init(3), qb_atomic_pointer_get(3), qb_atomic_pointer_compare_and_exchange(3), qb_atomic_pointer_set(3)
Copyright
Copyright (C) 2003 Sebastian Wilhelmi
Referenced By
qbatomic.h(3), qb_atomic_init(3), qb_atomic_int_add(3), qb_atomic_int_compare_and_exchange(3), qb_atomic_int_get(3), qb_atomic_int_set(3), qb_atomic_pointer_compare_and_exchange(3), qb_atomic_pointer_get(3), qb_atomic_pointer_set(3).
2023-07-21 libqb Programmer's Manual