ATOMIC_SWAP(3C) Standard C Library Functions ATOMIC_SWAP(3C)
NAME
atomic_swap, atomic_swap_8, atomic_swap_uchar, atomic_swap_16,
atomic_swap_ushort, atomic_swap_32, atomic_swap_uint,
atomic_swap_ulong, atomic_swap_64, atomic_swap_ptr - atomic swap
operations
SYNOPSIS
#include <atomic.h>
uint8_t atomic_swap_8(
volatile uint8_t *target,
uint8_t newval);
uchar_t atomic_swap_uchar(
volatile uchar_t *target,
uchar_t newval);
uint16_t atomic_swap_16(
volatile uint16_t *target,
uint16_t newval);
ushort_t atomic_swap_ushort(
volatile ushort_t *target,
ushort_t newval);
uint32_t atomic_swap_32(
volatile uint32_t *target,
uint32_t newval);
uint_t atomic_swap_uint(
volatile uint_t *target,
uint_t newval);
ulong_t atomic_swap_ulong(
volatile ulong_t *target,
ulong_t newval);
uint64_t atomic_swap_64(
volatile uint64_t *target,
uint64_t newval);
void *atomic_swap_ptr(
volatile void *target,
void *newval);
DESCRIPTION
These functions enable a swap operation to occur atomically. The
value stored in
target is replaced with
newval. The old value is
returned by the function.
RETURN VALUES
These functions return the old of *
target.
ERRORS
No errors are defined.
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Stable |
+--------------------+-----------------+
|MT-Level | MT-Safe |
+--------------------+-----------------+
SEE ALSO
atomic_add(3C),
atomic_and(3C),
atomic_bits(3C),
atomic_cas(3C),
atomic_dec(3C),
atomic_inc(3C),
atomic_or(3C),
membar_ops(3C),
attributes(7),
atomic_ops(9F) May 13, 2005 ATOMIC_SWAP(3C)