just::thread Complete C++ Standard Thread Library by Just Software Solutions

Documentation Home >> Headers >> <atomic> Header

The <atomic> header provides the set of basic atomic types and operations on those types, and a class template for constructing an atomic version of a user-defined type that meets certain criteria.

#define ATOMIC_CHAR_LOCK_FREE unspecified
#define ATOMIC_SHORT_LOCK_FREE unspecified
#define ATOMIC_INT_LOCK_FREE unspecified
#define ATOMIC_LONG_LOCK_FREE unspecified
#define ATOMIC_LLONG_LOCK_FREE unspecified
#define ATOMIC_ADDRESS_LOCK_FREE unspecified
#define ATOMIC_CHAR16_T_LOCK_FREE unspecified
#define ATOMIC_CHAR32_T_LOCK_FREE unspecified
#define ATOMIC_WCHAR_T_LOCK_FREE unspecified

#define ATOMIC_VAR_INIT(value) see description

namespace std
{
    enum memory_order;
    
    struct atomic_flag;
    struct atomic_bool;
    struct atomic_char;
    struct atomic_schar;
    struct atomic_uchar;
    struct atomic_short;
    struct atomic_ushort;
    struct atomic_int;
    struct atomic_uint;
    struct atomic_long;
    struct atomic_ulong;
    struct atomic_llong;
    struct atomic_ullong;
    struct atomic_wchar_t;
    struct atomic_address;

    typedef unspecified atomic_int_least8_t;
    typedef unspecified atomic_uint_least8_t;
    typedef unspecified atomic_int_least16_t;
    typedef unspecified atomic_uint_least16_t;
    typedef unspecified atomic_int_least32_t;
    typedef unspecified atomic_uint_least32_t;
    typedef unspecified atomic_int_least64_t;
    typedef unspecified atomic_uint_least64_t;
    typedef unspecified atomic_int_fast8_t;
    typedef unspecified atomic_uint_fast8_t;
    typedef unspecified atomic_int_fast16_t;
    typedef unspecified atomic_uint_fast16_t;
    typedef unspecified atomic_int_fast32_t;
    typedef unspecified atomic_uint_fast32_t;
    typedef unspecified atomic_int_fast64_t;
    typedef unspecified atomic_uint_fast64_t;
    typedef unspecified atomic_intptr_t;
    typedef unspecified atomic_uintptr_t;
    typedef unspecified atomic_size_t;
    typedef unspecified atomic_ssize_t;
    typedef unspecified atomic_ptrdiff_t;
    typedef unspecified atomic_intmax_t;
    typedef unspecified atomic_uintmax_t;

    template<typename T>
    struct atomic;

    void atomic_thread_fence(memory_order order);
    void atomic_signal_fence(memory_order order);

    template<typename T>
    T kill_dependency(T);
}
See Also