Provided by: libqb-dev_2.0.6-1_amd64 bug

NAME

       qb_atomic_pointer_compare_and_exchange  -  Compares  oldval with the pointer pointed to by
       atomic and if they are equal, atomically exchanges *atomic with newval.

SYNOPSIS

       #include <qb/qbatomic.h>

       int32_t qb_atomic_pointer_compare_and_exchange(
           volatile void *QB_GNUC_MAY_ALIAS   *atomic,     /* a pointer to a void* */
           void                               *oldval,     /* the assumed old value of *atomic */
           void                               *newval     /* the new value of *atomic*/
       );

PARAMS

       atomic a pointer to a void*

       oldval the assumed old value of *atomic

       newval the new value of *atomic

DESCRIPTION

       Also acts as a memory barrier.

RETURN VALUE

       QB_TRUE if atomic was equal oldval, else QB_FALSE.

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_int_exchange_and_add(3), qb_atomic_pointer_set(3)

COPYRIGHT

       Copyright (C) 2003 Sebastian Wilhelmi