< c‎ | atomic
Revision as of 23:33, 2 November 2012 by P12bot (Talk | contribs)

Defined in header <stdatomic.h>
#define ATOMIC_VAR_INIT(value) /* unspecified */
(since C11)

Expands to an expression that can be used to initialize an atomic variable of the same type as value. The initial value of atomic object of automatic storage duration that is not initialized using this macro is undefined. The default (zero) initialization of static and thread-local variables produces valid value however.

If this macro is not used for initialization of an atomic variable, any accesses during initialization from another thread, even through an atomic operation, is a data race (it may happen if the address is immediately passed to another thread with a memory_order_relaxed operation).

See also

Template:c/atomic/dcl list ATOMIC FLAG INIT