Functions | |
apr_status_t | apr_atomic_init (apr_pool_t *p) |
apr_uint32_t | apr_atomic_read32 (volatile apr_uint32_t *mem) |
void | apr_atomic_set32 (volatile apr_uint32_t *mem, apr_uint32_t val) |
apr_uint32_t | apr_atomic_add32 (volatile apr_uint32_t *mem, apr_uint32_t val) |
void | apr_atomic_sub32 (volatile apr_uint32_t *mem, apr_uint32_t val) |
apr_uint32_t | apr_atomic_inc32 (volatile apr_uint32_t *mem) |
int | apr_atomic_dec32 (volatile apr_uint32_t *mem) |
apr_uint32_t | apr_atomic_cas32 (volatile apr_uint32_t *mem, apr_uint32_t with, apr_uint32_t cmp) |
apr_uint32_t | apr_atomic_xchg32 (volatile apr_uint32_t *mem, apr_uint32_t val) |
void * | apr_atomic_casptr (volatile void **mem, void *with, const void *cmp) |
void * | apr_atomic_xchgptr (volatile void **mem, void *with) |
apr_uint32_t apr_atomic_add32 | ( | volatile apr_uint32_t * | mem, | |
apr_uint32_t | val | |||
) |
atomically add 'val' to an apr_uint32_t
mem | pointer to the object | |
val | amount to add |
apr_uint32_t apr_atomic_cas32 | ( | volatile apr_uint32_t * | mem, | |
apr_uint32_t | with, | |||
apr_uint32_t | cmp | |||
) |
compare an apr_uint32_t's value with 'cmp'. If they are the same swap the value with 'with'
mem | pointer to the value | |
with | what to swap it with | |
cmp | the value to compare it to |
void* apr_atomic_casptr | ( | volatile void ** | mem, | |
void * | with, | |||
const void * | cmp | |||
) |
compare the pointer's value with cmp. If they are the same swap the value with 'with'
mem | pointer to the pointer | |
with | what to swap it with | |
cmp | the value to compare it to |
int apr_atomic_dec32 | ( | volatile apr_uint32_t * | mem | ) |
atomically decrement an apr_uint32_t by 1
mem | pointer to the atomic value |
apr_uint32_t apr_atomic_inc32 | ( | volatile apr_uint32_t * | mem | ) |
atomically increment an apr_uint32_t by 1
mem | pointer to the object |
apr_status_t apr_atomic_init | ( | apr_pool_t * | p | ) |
this function is required on some platforms to initialize the atomic operation's internal structures
p | pool |
apr_uint32_t apr_atomic_read32 | ( | volatile apr_uint32_t * | mem | ) |
atomically read an apr_uint32_t from memory
mem | the pointer |
void apr_atomic_set32 | ( | volatile apr_uint32_t * | mem, | |
apr_uint32_t | val | |||
) |
atomically set an apr_uint32_t in memory
mem | pointer to the object | |
val | value that the object will assume |
void apr_atomic_sub32 | ( | volatile apr_uint32_t * | mem, | |
apr_uint32_t | val | |||
) |
atomically subtract 'val' from an apr_uint32_t
mem | pointer to the object | |
val | amount to subtract |
apr_uint32_t apr_atomic_xchg32 | ( | volatile apr_uint32_t * | mem, | |
apr_uint32_t | val | |||
) |
exchange an apr_uint32_t's value with 'val'.
mem | pointer to the value | |
val | what to swap it with |
void* apr_atomic_xchgptr | ( | volatile void ** | mem, | |
void * | with | |||
) |
exchange a pair of pointer values
mem | pointer to the pointer | |
with | what to swap it with |