std::atomic_fetch_or

Defined in header <atomic> (1) (since C++11) template< class Integral > Integral atomic_fetch_or( std::atomic<Integral>* obj, Integral arg ); template< class Integral > Integral atomic_fetch_or( volatile std::atomic<Integral>* obj, Integral arg ); (2) (since C++11) template< class Integral > Integral atomic_fetch_or_explicit( std::atomic<Integral>* obj, Integral arg,

std::atomic_compare_exchange_weak

Defined in header <atomic> (1) (since C++11) template< class T > bool atomic_compare_exchange_weak( std::atomic<T>* obj, T* expected, T desired ); template< class T > bool atomic_compare_exchange_weak( volatile std::atomic<T>* obj, T* expected, T desired ); (2) (since C++11) template< class T > bool atomic_compare_exchange_strong( std::atomic<T>* obj,

std::atomic_exchange

Defined in header <atomic> (1) (since C++11) template< class T > T atomic_exchange( std::atomic<T>* obj, T desr ); template< class T > T atomic_exchange( volatile std::atomic<T>* obj, T desr ); (2) (since C++11) template< class T > T atomic_exchange_explicit( std::atomic<T>* obj, T desr, std::memory_order order ); template< class T > T atomic_exchange_explicit( volatile std::atomic<T>

std::atomic_fetch_add

Defined in header <atomic> (1) (since C++11) template< class Integral > Integral atomic_fetch_add( std::atomic<Integral>* obj, Integral arg ); template< class Integral > Integral atomic_fetch_add( volatile std::atomic<Integral>* obj, Integral arg ); (2) (since C++11) template< class Integral > Integral atomic_fetch_add_explicit( std::atomic<Integral>* obj, Integral arg, std::memory_order order

std::atomic_...&lt;std::shared_ptr&gt;

template< class T > bool atomic_is_lock_free( const std::shared_ptr<T>* p ); (1) (since C++11) template< class T > std::shared_ptr<T> atomic_load( const std::shared_ptr<T>* p ); (2) (since C++11) template< class T > std::shared_ptr<T> atomic_load_explicit( const std::shared_ptr<T>* p, std::memory_order mo ); (3) (since C++11) template< class T > void atomic_store( std::shared_ptr<

std::atomic::operators (int)

T operator++(); T operator++() volatile; (1) (member only of atomic<Integral> template specialization)(since C++11) T* operator++(); T* operator++() volatile; (1) (member only of atomic<T*> template specialization)(since C++11) T operator++( int ); T operator++( int ) volatile; (2) (member only of atomic<Integral> template specialization)(since C++11) T* operator++( int ); T* operator++( int ) volatile; (2) (member only of atomic<T*> template speci

std::atomic::store

(since C++11) void store( T desired, std::memory_order order = std::memory_order_seq_cst ); void store( T desired, std::memory_order order = std::memory_order_seq_cst ) volatile; Atomically replaces the current value with desired. Memory is affected according to the value of order. order must be one of std::memory_order_relaxed, std::memory_order_release or std::memory_order_seq_cst. Otherwise the behavior is undefined. Parameters desired - the value to store into the

std::atomic::operators

(1) (since C++11) (member only of atomic<Integral> template specialization) T operator+=( T arg ); T operator+=( T arg ) volatile; (1) (since C++11) (member only of atomic<T*> template specialization) T* operator+=( std::ptrdiff_t arg ); T* operator+=( std::ptrdiff_t arg ) volatile; (2) (since C++11) (member only of atomic<Integral> template specialization) T operator-=( T arg ); T operator-=( T arg ) volatile; (2) (since C++11) (member

std::atomic::fetch_add

(1) (since C++11) (member only of atomic<Integral> template specialization) T fetch_add( T arg, std::memory_order order = std::memory_order_seq_cst ); T fetch_add( T arg, std::memory_order order = std::memory_order_seq_cst ) volatile; (2) (since C++11) (member only of atomic<T*> template specialization) T* fetch_add( std::ptrdiff_t arg, std::memory_order order = std::memory_order_seq_cst ); T* fetch_add( std::ptrdiff_t

std::atomic::fetch_and

(since C++11) (member only of atomic<Integral> template specialization) T fetch_and( T arg, std::memory_order order = std::memory_order_seq_cst ); T fetch_and( T arg, std::memory_order order = std::memory_order_seq_cst ) volatile; Atomically replaces the current value with the result of bitwise AND of the value and arg. The operation is read-modify-write operation. Memory is affected according to the value of order. Parameters arg - th