STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | List of all members
atomic< _Ty > Struct Template Reference
Inheritance diagram for atomic< _Ty >:
_Atomic< _Ty, sizeof(_Ty)> _Atomic_impl< _Bytes >

Public Types

typedef _Atomic< _Ty, sizeof(_Ty)> _My_base
 

Public Member Functions

 atomic () _NOEXCEPT
 
 atomic (const atomic &)=delete
 
atomicoperator= (const atomic &)=delete
 
atomicoperator= (const atomic &) volatile=delete
 
 atomic (_Ty _Val) _NOEXCEPT
 
_Ty operator= (_Ty _Right) volatile _NOEXCEPT
 
_Ty operator= (_Ty _Right) _NOEXCEPT
 
- Public Member Functions inherited from _Atomic< _Ty, sizeof(_Ty)>
 _Atomic (_Ty _Val)
 
 _Atomic () _NOEXCEPT
 
 _Atomic (const _Atomic &)=delete
 
_Atomicoperator= (const _Atomic &)=delete
 
_Atomicoperator= (const _Atomic &) volatile=delete
 
_Ty operator= (_Ty _Right) volatile _NOEXCEPT
 
_Ty operator= (_Ty _Right) _NOEXCEPT
 
bool is_lock_free () const volatile _NOEXCEPT
 
bool is_lock_free () const _NOEXCEPT
 
void store (_Ty _Value, memory_order _Order=memory_order_seq_cst) volatile _NOEXCEPT
 
void store (_Ty _Value, memory_order _Order=memory_order_seq_cst) _NOEXCEPT
 
_Ty load (memory_order _Order=memory_order_seq_cst) const volatile _NOEXCEPT
 
_Ty load (memory_order _Order=memory_order_seq_cst) const _NOEXCEPT
 
 operator _Ty () const volatile _NOEXCEPT
 
 operator _Ty () const _NOEXCEPT
 
_Ty exchange (_Ty _Value, memory_order _Order=memory_order_seq_cst) volatile _NOEXCEPT
 
_Ty exchange (_Ty _Value, memory_order _Order=memory_order_seq_cst) _NOEXCEPT
 
bool compare_exchange_weak (_Ty &_Exp, _Ty _Value, memory_order _Order1, memory_order _Order2) volatile _NOEXCEPT
 
bool compare_exchange_weak (_Ty &_Exp, _Ty _Value, memory_order _Order1, memory_order _Order2) _NOEXCEPT
 
bool compare_exchange_weak (_Ty &_Exp, _Ty _Value, memory_order _Order=memory_order_seq_cst) volatile _NOEXCEPT
 
bool compare_exchange_weak (_Ty &_Exp, _Ty _Value, memory_order _Order=memory_order_seq_cst) _NOEXCEPT
 
bool compare_exchange_strong (_Ty &_Exp, _Ty _Value, memory_order _Order1, memory_order _Order2) volatile _NOEXCEPT
 
bool compare_exchange_strong (_Ty &_Exp, _Ty _Value, memory_order _Order1, memory_order _Order2) _NOEXCEPT
 
bool compare_exchange_strong (_Ty &_Exp, _Ty _Value, memory_order _Order=memory_order_seq_cst) volatile _NOEXCEPT
 
bool compare_exchange_strong (_Ty &_Exp, _Ty _Value, memory_order _Order=memory_order_seq_cst) _NOEXCEPT
 
- Public Member Functions inherited from _Atomic_impl< _Bytes >
 _Atomic_impl ()
 
bool _Is_lock_free () const volatile
 
void _Store (void *_Tgt, const void *_Src, memory_order _Order) volatile
 
void _Load (void *_Tgt, const void *_Src, memory_order _Order) const volatile
 
void _Exchange (void *_Left, void *_Right, memory_order _Order) volatile
 
bool _Compare_exchange_weak (void *_Tgt, void *_Exp, const void *_Value, memory_order _Order1, memory_order _Order2) volatile
 
bool _Compare_exchange_strong (void *_Tgt, void *_Exp, const void *_Value, memory_order _Order1, memory_order _Order2) volatile
 

Additional Inherited Members

- Public Attributes inherited from _Atomic< _Ty, sizeof(_Ty)>
_Ty _My_val
 

Member Typedef Documentation

template<class _Ty>
typedef _Atomic<_Ty, sizeof (_Ty)> atomic< _Ty >::_My_base

Constructor & Destructor Documentation

template<class _Ty>
atomic< _Ty >::atomic ( )
inline
665  { // default constructor
666  }
template<class _Ty>
atomic< _Ty >::atomic ( const atomic< _Ty > &  )
delete
template<class _Ty>
atomic< _Ty >::atomic ( _Ty  _Val)
inline
673  : _My_base(_Val)
674  { // construct from _Val
675  }
_Atomic< _Ty, sizeof(_Ty)> _My_base
Definition: atomic:662
_FwdIt const _Ty _Val
Definition: algorithm:1938

Member Function Documentation

template<class _Ty>
atomic& atomic< _Ty >::operator= ( const atomic< _Ty > &  )
delete
template<class _Ty>
atomic& atomic< _Ty >::operator= ( const atomic< _Ty > &  ) volatile
delete
template<class _Ty>
_Ty atomic< _Ty >::operator= ( _Ty  _Right) volatile
inline
678  { // assign from _Right
679  return _My_base::operator=(_Right);
680  }
_Atomic & operator=(const _Atomic &)=delete
const _Ty & _Right
Definition: algorithm:4087
template<class _Ty>
_Ty atomic< _Ty >::operator= ( _Ty  _Right)
inline
683  { // assign from _Right
684  return _My_base::operator=(_Right);
685  }
_Atomic & operator=(const _Atomic &)=delete
const _Ty & _Right
Definition: algorithm:4087

The documentation for this struct was generated from the following file: