std::atomic - Man Page
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
void notify_all () noexcept
void notify_one () 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
void wait (_Tp __old, memory_order __m=memory_order_seq_cst) const noexcept
Static Public Attributes
static constexpr bool is_always_lock_free
Detailed Description
template<typename _Tp>
class std::atomic< _Tp >"Generic atomic type, primary class template.
Template Parameters
_Tp Type to be made atomic, must be trivially copyable.
Definition at line 198 of file atomic.
Member Typedef Documentation
template<typename _Tp > using std::atomic< _Tp >::value_type = _Tp
Definition at line 200 of file atomic.
Constructor & Destructor Documentation
template<typename _Tp > constexpr std::atomic< _Tp >::atomic (_Tp __i) [inline], [constexpr], [noexcept]
Definition at line 233 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 378 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 384 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 362 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 370 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 350 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 356 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 334 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 342 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 311 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 322 of file atomic.
template<typename _Tp > bool std::atomic< _Tp >::is_lock_free () const [inline], [noexcept]
Definition at line 256 of file atomic.
template<typename _Tp > bool std::atomic< _Tp >::is_lock_free () const volatile [inline], [noexcept]
Definition at line 264 of file atomic.
template<typename _Tp > _Tp std::atomic< _Tp >::load (memory_order __m = memory_order_seq_cst) const [inline], [noexcept]
Definition at line 293 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 302 of file atomic.
template<typename _Tp > void std::atomic< _Tp >::notify_all () [inline], [noexcept]
Definition at line 404 of file atomic.
template<typename _Tp > void std::atomic< _Tp >::notify_one () [inline], [noexcept]
Definition at line 400 of file atomic.
template<typename _Tp > std::atomic< _Tp >::operator _Tp () const [inline], [noexcept]
Definition at line 241 of file atomic.
template<typename _Tp > std::atomic< _Tp >::operator _Tp () const volatile [inline], [noexcept]
Definition at line 244 of file atomic.
template<typename _Tp > _Tp std::atomic< _Tp >::operator= (_Tp __i) [inline], [noexcept]
Definition at line 248 of file atomic.
template<typename _Tp > _Tp std::atomic< _Tp >::operator= (_Tp __i) volatile [inline], [noexcept]
Definition at line 252 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 277 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 285 of file atomic.
template<typename _Tp > void std::atomic< _Tp >::wait (_Tp __old, memory_order __m = memory_order_seq_cst) const [inline], [noexcept]
Definition at line 391 of file atomic.
Member Data Documentation
template<typename _Tp > constexpr bool std::atomic< _Tp >::is_always_lock_free [static], [constexpr]
Definition at line 272 of file atomic.
Author
Generated automatically by Doxygen for libstdc++ from the source code.