STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | List of all members
_Atomic_impl< 4U > Struct Template Reference

Public Types

typedef _Uint4_t _My_int
 

Public Member Functions

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
 

Member Typedef Documentation

typedef _Uint4_t _Atomic_impl< 4U >::_My_int

Member Function Documentation

bool _Atomic_impl< 4U >::_Compare_exchange_strong ( void _Tgt,
void _Exp,
const void _Value,
memory_order  _Order1,
memory_order  _Order2 
) volatile
inline
445  { // compare/exchange
447  (_My_int*)_Tgt, (_My_int*)_Exp, *(_My_int*)_Value,
448  _Order1, _Order2);
449  }
int _Atomic_compare_exchange_strong_4(volatile _Uint4_t *_Tgt, _Uint4_t *_Exp, _Uint4_t _Value, memory_order _Order1, memory_order _Order2)
Definition: xatomic.h:1601
_CRTIMP _In_ int _Value
Definition: setjmp.h:190
_CRTIMP2_PURE short __CLRCALL_PURE_OR_CDECL _Exp(double *, double, short)
_Uint4_t _My_int
Definition: atomic:409
bool _Atomic_impl< 4U >::_Compare_exchange_weak ( void _Tgt,
void _Exp,
const void _Value,
memory_order  _Order1,
memory_order  _Order2 
) volatile
inline
436  { // compare/exchange
438  (_My_int*)_Tgt, (_My_int*)_Exp, *(_My_int*)_Value,
439  _Order1, _Order2);
440  }
_CRTIMP _In_ int _Value
Definition: setjmp.h:190
_CRTIMP2_PURE short __CLRCALL_PURE_OR_CDECL _Exp(double *, double, short)
_Uint4_t _My_int
Definition: atomic:409
int _Atomic_compare_exchange_weak_4(volatile _Uint4_t *_Tgt, _Uint4_t *_Exp, _Uint4_t _Value, memory_order _Order1, memory_order _Order2)
Definition: xatomic.h:1629
void _Atomic_impl< 4U >::_Exchange ( void _Left,
void _Right,
memory_order  _Order 
) volatile
inline
428  { // exchange
429  *(_My_int*)_Right =
430  _Atomic_exchange_4((_My_int*)_Left, *(_My_int*)_Right, _Order);
431  }
_Uint4_t _Atomic_exchange_4(volatile _Uint4_t *_Tgt, _Uint4_t _Value, memory_order _Order)
Definition: xatomic.h:1494
_Uint4_t _My_int
Definition: atomic:409
const _Ty & _Right
Definition: algorithm:4087
bool _Atomic_impl< 4U >::_Is_lock_free ( ) const volatile
inline
412  { // all operations are lock-free
413  return _Atomic_is_lock_free_4();
414  }
int _Atomic_is_lock_free_4(void)
Definition: xatomic.h:2536
void _Atomic_impl< 4U >::_Load ( void _Tgt,
const void _Src,
memory_order  _Order 
) const volatile
inline
423  { // load
424  *(_My_int*)_Tgt = _Atomic_load_4((_My_int*)_Src, _Order);
425  }
_Uint4_t _My_int
Definition: atomic:409
_In_ size_t _In_z_ const unsigned char * _Src
Definition: mbstring.h:95
_Uint4_t _Atomic_load_4(volatile _Uint4_t *_Tgt, memory_order _Order)
Definition: xatomic.h:1444
void _Atomic_impl< 4U >::_Store ( void _Tgt,
const void _Src,
memory_order  _Order 
) volatile
inline
417  { // store
418  _Atomic_store_4((_My_int*)_Tgt, *(_My_int*)_Src, _Order);
419  }
void _Atomic_store_4(volatile _Uint4_t *_Tgt, _Uint4_t _Value, memory_order _Order)
Definition: xatomic.h:1381
_Uint4_t _My_int
Definition: atomic:409
_In_ size_t _In_z_ const unsigned char * _Src
Definition: mbstring.h:95

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