ATOMIC_STORE(3) Library Functions Manual ATOMIC_STORE(3)

atomic_store atomic_store_explicitatomically store a value in an object

#include <stdatomic.h>

void atomic_store(volatile A *object, C desired);
void atomic_store_explicit(volatile A *object, C desired,
       memory_order order);

The functionality described on this reference page is aligned with the ISO C standard. Any conflict between the requirements described here and the ISO C standard is unintentional. This volume of POSIX.1-2024 defers to the ISO C standard.

Implementations that define the macro __STDC_NO_ATOMICS__ need not provide the <stdatomic.h> header nor support these generic functions.

The atomic_store_explicit () generic function shall atomically replace the value pointed to by with . Memory shall be affected according to the value of order, which the application shall ensure is not memory_order_acquire, memory_order_consume, nor memory_order_acq_rel.

The atomic_store () generic function shall be equivalent to atomic_store_explicit () called with order set to memory_order_seq_cst.

These generic functions shall not return a value.

No errors are defined.

None.

None.

None.

None.

XBD V1_chap04(7), <stdatomic.h>

First released in Issue 8. Included for alignment with the ISO/IEC 9899:2018 standard.

June 14, 2024 posix.fail