Atomically replace the value pointed to by object
with desired
.
C atomic_exchange(volatile A *object,
C desired)
C atomic_exchange_explicit(volatile A *object,
C desired,
memory_order order)
C atomic_exchange_explicit(volatile A *object,
C desired,
memory_order order,
memory_scope scope)
object
desired
order
scope
-
== Description
Atomically replace the value pointed to by object
with desired
.
Memory is affected according to the value of order
.
These operations are read-modify-write operations (as defined by section 5.1.2.4 of the C11 specification).
Atomically returns the value pointed to by object
immediately before the effects.