Scroll to navigation

std::atomic< _Tp >(3cxx) std::atomic< _Tp >(3cxx)

NAME

std::atomic< _Tp > - Generic atomic type, primary class template.

SYNOPSIS

Public Types


using value_type = _Tp

Public Member Functions


constexpr atomic (_Tp __i) noexcept
atomic (const atomic &)=delete
bool compare_exchange_strong (_Tp &__e, _Tp __i, memory_order __m=memory_order_seq_cst) noexcept
bool compare_exchange_strong (_Tp &__e, _Tp __i, memory_order __m=memory_order_seq_cst) volatile noexcept
bool compare_exchange_strong (_Tp &__e, _Tp __i, memory_order __s, memory_order __f) noexcept
bool compare_exchange_strong (_Tp &__e, _Tp __i, memory_order __s, memory_order __f) volatile noexcept
bool compare_exchange_weak (_Tp &__e, _Tp __i, memory_order __m=memory_order_seq_cst) noexcept
bool compare_exchange_weak (_Tp &__e, _Tp __i, memory_order __m=memory_order_seq_cst) volatile noexcept
bool compare_exchange_weak (_Tp &__e, _Tp __i, memory_order __s, memory_order __f) noexcept
bool compare_exchange_weak (_Tp &__e, _Tp __i, memory_order __s, memory_order __f) volatile noexcept
_Tp exchange (_Tp __i, memory_order __m=memory_order_seq_cst) noexcept
_Tp exchange (_Tp __i, memory_order __m=memory_order_seq_cst) volatile noexcept
bool is_lock_free () const noexcept
bool is_lock_free () const volatile noexcept
_Tp load (memory_order __m=memory_order_seq_cst) const noexcept
_Tp load (memory_order __m=memory_order_seq_cst) const volatile noexcept
operator _Tp () const noexcept
operator _Tp () const volatile noexcept
_Tp operator= (_Tp __i) noexcept
_Tp operator= (_Tp __i) volatile noexcept
atomic & operator= (const atomic &) volatile=delete
atomic & operator= (const atomic &)=delete
void store (_Tp __i, memory_order __m=memory_order_seq_cst) noexcept
void store (_Tp __i, memory_order __m=memory_order_seq_cst) volatile noexcept

Detailed Description

template<typename _Tp>

struct std::atomic< _Tp >"Generic atomic type, primary class template.

Template Parameters

_Tp Type to be made atomic, must be trivially copyable.

Definition at line 180 of file atomic.

Member Typedef Documentation

template<typename _Tp > using std::atomic< _Tp >::value_type = _Tp

Definition at line 182 of file atomic.

Constructor & Destructor Documentation

template<typename _Tp > constexpr std::atomic< _Tp >::atomic (_Tp __i) [inline], [constexpr], [noexcept]

Definition at line 215 of file atomic.

Member Function Documentation

template<typename _Tp > bool std::atomic< _Tp >::compare_exchange_strong (_Tp & __e, _Tp __i, memory_order __m = memory_order_seq_cst) [inline], [noexcept]

Definition at line 352 of file atomic.

template<typename _Tp > bool std::atomic< _Tp >::compare_exchange_strong (_Tp & __e, _Tp __i, memory_order __m = memory_order_seq_cst) volatile [inline], [noexcept]

Definition at line 358 of file atomic.

template<typename _Tp > bool std::atomic< _Tp >::compare_exchange_strong (_Tp & __e, _Tp __i, memory_order __s, memory_order __f) [inline], [noexcept]

Definition at line 332 of file atomic.

template<typename _Tp > bool std::atomic< _Tp >::compare_exchange_strong (_Tp & __e, _Tp __i, memory_order __s, memory_order __f) volatile [inline], [noexcept]

Definition at line 342 of file atomic.

template<typename _Tp > bool std::atomic< _Tp >::compare_exchange_weak (_Tp & __e, _Tp __i, memory_order __m = memory_order_seq_cst) [inline], [noexcept]

Definition at line 320 of file atomic.

template<typename _Tp > bool std::atomic< _Tp >::compare_exchange_weak (_Tp & __e, _Tp __i, memory_order __m = memory_order_seq_cst) volatile [inline], [noexcept]

Definition at line 326 of file atomic.

template<typename _Tp > bool std::atomic< _Tp >::compare_exchange_weak (_Tp & __e, _Tp __i, memory_order __s, memory_order __f) [inline], [noexcept]

Definition at line 300 of file atomic.

template<typename _Tp > bool std::atomic< _Tp >::compare_exchange_weak (_Tp & __e, _Tp __i, memory_order __s, memory_order __f) volatile [inline], [noexcept]

Definition at line 310 of file atomic.

template<typename _Tp > _Tp std::atomic< _Tp >::exchange (_Tp __i, memory_order __m = memory_order_seq_cst) [inline], [noexcept]

Definition at line 279 of file atomic.

template<typename _Tp > _Tp std::atomic< _Tp >::exchange (_Tp __i, memory_order __m = memory_order_seq_cst) volatile [inline], [noexcept]

Definition at line 289 of file atomic.

template<typename _Tp > bool std::atomic< _Tp >::is_lock_free () const [inline], [noexcept]

Definition at line 232 of file atomic.

template<typename _Tp > bool std::atomic< _Tp >::is_lock_free () const volatile [inline], [noexcept]

Definition at line 240 of file atomic.

template<typename _Tp > _Tp std::atomic< _Tp >::load (memory_order __m = memory_order_seq_cst) const [inline], [noexcept]

Definition at line 261 of file atomic.

template<typename _Tp > _Tp std::atomic< _Tp >::load (memory_order __m = memory_order_seq_cst) const volatile [inline], [noexcept]

Definition at line 270 of file atomic.

template<typename _Tp > std::atomic< _Tp >::operator _Tp () const [inline], [noexcept]

Definition at line 217 of file atomic.

template<typename _Tp > std::atomic< _Tp >::operator _Tp () const volatile [inline], [noexcept]

Definition at line 220 of file atomic.

template<typename _Tp > _Tp std::atomic< _Tp >::operator= (_Tp __i) [inline], [noexcept]

Definition at line 224 of file atomic.

template<typename _Tp > _Tp std::atomic< _Tp >::operator= (_Tp __i) volatile [inline], [noexcept]

Definition at line 228 of file atomic.

template<typename _Tp > void std::atomic< _Tp >::store (_Tp __i, memory_order __m = memory_order_seq_cst) [inline], [noexcept]

Definition at line 253 of file atomic.

template<typename _Tp > void std::atomic< _Tp >::store (_Tp __i, memory_order __m = memory_order_seq_cst) volatile [inline], [noexcept]

Definition at line 257 of file atomic.

Author

Generated automatically by Doxygen for libstdc++ from the source code.

Tue Jan 10 2023 libstdc++