.TH "std::atomic< _Tp >" 3cxx "Thu Feb 16 2023" "libstdc++" \" -*- nroff -*- .ad l .nh .SH NAME std::atomic< _Tp > \- Generic atomic type, primary class template\&. .SH SYNOPSIS .br .PP .SS "Public Types" .in +1c .ti -1c .RI "using \fBvalue_type\fP = _Tp" .br .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "constexpr \fBatomic\fP (_Tp __i) noexcept" .br .ti -1c .RI "\fBatomic\fP (const \fBatomic\fP &)=delete" .br .ti -1c .RI "bool \fBcompare_exchange_strong\fP (_Tp &__e, _Tp __i, \fBmemory_order\fP __m=memory_order_seq_cst) noexcept" .br .ti -1c .RI "bool \fBcompare_exchange_strong\fP (_Tp &__e, _Tp __i, \fBmemory_order\fP __m=memory_order_seq_cst) volatile noexcept" .br .ti -1c .RI "bool \fBcompare_exchange_strong\fP (_Tp &__e, _Tp __i, \fBmemory_order\fP __s, \fBmemory_order\fP __f) noexcept" .br .ti -1c .RI "bool \fBcompare_exchange_strong\fP (_Tp &__e, _Tp __i, \fBmemory_order\fP __s, \fBmemory_order\fP __f) volatile noexcept" .br .ti -1c .RI "bool \fBcompare_exchange_weak\fP (_Tp &__e, _Tp __i, \fBmemory_order\fP __m=memory_order_seq_cst) noexcept" .br .ti -1c .RI "bool \fBcompare_exchange_weak\fP (_Tp &__e, _Tp __i, \fBmemory_order\fP __m=memory_order_seq_cst) volatile noexcept" .br .ti -1c .RI "bool \fBcompare_exchange_weak\fP (_Tp &__e, _Tp __i, \fBmemory_order\fP __s, \fBmemory_order\fP __f) noexcept" .br .ti -1c .RI "bool \fBcompare_exchange_weak\fP (_Tp &__e, _Tp __i, \fBmemory_order\fP __s, \fBmemory_order\fP __f) volatile noexcept" .br .ti -1c .RI "_Tp \fBexchange\fP (_Tp __i, \fBmemory_order\fP __m=memory_order_seq_cst) noexcept" .br .ti -1c .RI "_Tp \fBexchange\fP (_Tp __i, \fBmemory_order\fP __m=memory_order_seq_cst) volatile noexcept" .br .ti -1c .RI "bool \fBis_lock_free\fP () const noexcept" .br .ti -1c .RI "bool \fBis_lock_free\fP () const volatile noexcept" .br .ti -1c .RI "_Tp \fBload\fP (\fBmemory_order\fP __m=memory_order_seq_cst) const noexcept" .br .ti -1c .RI "_Tp \fBload\fP (\fBmemory_order\fP __m=memory_order_seq_cst) const volatile noexcept" .br .ti -1c .RI "\fBoperator _Tp\fP () const noexcept" .br .ti -1c .RI "\fBoperator _Tp\fP () const volatile noexcept" .br .ti -1c .RI "_Tp \fBoperator=\fP (_Tp __i) noexcept" .br .ti -1c .RI "_Tp \fBoperator=\fP (_Tp __i) volatile noexcept" .br .ti -1c .RI "\fBatomic\fP & \fBoperator=\fP (const \fBatomic\fP &) volatile=delete" .br .ti -1c .RI "\fBatomic\fP & \fBoperator=\fP (const \fBatomic\fP &)=delete" .br .ti -1c .RI "void \fBstore\fP (_Tp __i, \fBmemory_order\fP __m=memory_order_seq_cst) noexcept" .br .ti -1c .RI "void \fBstore\fP (_Tp __i, \fBmemory_order\fP __m=memory_order_seq_cst) volatile noexcept" .br .in -1c .SS "Static Public Attributes" .in +1c .ti -1c .RI "static constexpr bool \fBis_always_lock_free\fP" .br .in -1c .SH "Detailed Description" .PP .SS "template .br struct std::atomic< _Tp >"Generic atomic type, primary class template\&. .PP \fBTemplate Parameters\fP .RS 4 \fI_Tp\fP Type to be made atomic, must be trivially copyable\&. .RE .PP .PP Definition at line \fB196\fP of file \fBatomic\fP\&. .SH "Member Typedef Documentation" .PP .SS "template using \fBstd::atomic\fP< _Tp >::value_type = _Tp" .PP Definition at line \fB198\fP of file \fBatomic\fP\&. .SH "Constructor & Destructor Documentation" .PP .SS "template constexpr \fBstd::atomic\fP< _Tp >::atomic (_Tp __i)\fC [inline]\fP, \fC [constexpr]\fP, \fC [noexcept]\fP" .PP Definition at line \fB231\fP of file \fBatomic\fP\&. .SH "Member Function Documentation" .PP .SS "template bool \fBstd::atomic\fP< _Tp >::compare_exchange_strong (_Tp & __e, _Tp __i, \fBmemory_order\fP __m = \fCmemory_order_seq_cst\fP)\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB380\fP of file \fBatomic\fP\&. .SS "template bool \fBstd::atomic\fP< _Tp >::compare_exchange_strong (_Tp & __e, _Tp __i, \fBmemory_order\fP __m = \fCmemory_order_seq_cst\fP) volatile\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB386\fP of file \fBatomic\fP\&. .SS "template bool \fBstd::atomic\fP< _Tp >::compare_exchange_strong (_Tp & __e, _Tp __i, \fBmemory_order\fP __s, \fBmemory_order\fP __f)\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB356\fP of file \fBatomic\fP\&. .SS "template bool \fBstd::atomic\fP< _Tp >::compare_exchange_strong (_Tp & __e, _Tp __i, \fBmemory_order\fP __s, \fBmemory_order\fP __f) volatile\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB368\fP of file \fBatomic\fP\&. .SS "template bool \fBstd::atomic\fP< _Tp >::compare_exchange_weak (_Tp & __e, _Tp __i, \fBmemory_order\fP __m = \fCmemory_order_seq_cst\fP)\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB344\fP of file \fBatomic\fP\&. .SS "template bool \fBstd::atomic\fP< _Tp >::compare_exchange_weak (_Tp & __e, _Tp __i, \fBmemory_order\fP __m = \fCmemory_order_seq_cst\fP) volatile\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB350\fP of file \fBatomic\fP\&. .SS "template bool \fBstd::atomic\fP< _Tp >::compare_exchange_weak (_Tp & __e, _Tp __i, \fBmemory_order\fP __s, \fBmemory_order\fP __f)\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB320\fP of file \fBatomic\fP\&. .SS "template bool \fBstd::atomic\fP< _Tp >::compare_exchange_weak (_Tp & __e, _Tp __i, \fBmemory_order\fP __s, \fBmemory_order\fP __f) volatile\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB332\fP of file \fBatomic\fP\&. .SS "template _Tp \fBstd::atomic\fP< _Tp >::exchange (_Tp __i, \fBmemory_order\fP __m = \fCmemory_order_seq_cst\fP)\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB299\fP of file \fBatomic\fP\&. .SS "template _Tp \fBstd::atomic\fP< _Tp >::exchange (_Tp __i, \fBmemory_order\fP __m = \fCmemory_order_seq_cst\fP) volatile\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB309\fP of file \fBatomic\fP\&. .SS "template bool \fBstd::atomic\fP< _Tp >::is_lock_free () const\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB248\fP of file \fBatomic\fP\&. .SS "template bool \fBstd::atomic\fP< _Tp >::is_lock_free () const volatile\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB256\fP of file \fBatomic\fP\&. .SS "template _Tp \fBstd::atomic\fP< _Tp >::load (\fBmemory_order\fP __m = \fCmemory_order_seq_cst\fP) const\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB281\fP of file \fBatomic\fP\&. .SS "template _Tp \fBstd::atomic\fP< _Tp >::load (\fBmemory_order\fP __m = \fCmemory_order_seq_cst\fP) const volatile\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB290\fP of file \fBatomic\fP\&. .SS "template \fBstd::atomic\fP< _Tp >::operator _Tp () const\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB233\fP of file \fBatomic\fP\&. .SS "template \fBstd::atomic\fP< _Tp >::operator _Tp () const volatile\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB236\fP of file \fBatomic\fP\&. .SS "template _Tp \fBstd::atomic\fP< _Tp >::operator= (_Tp __i)\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB240\fP of file \fBatomic\fP\&. .SS "template _Tp \fBstd::atomic\fP< _Tp >::operator= (_Tp __i) volatile\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB244\fP of file \fBatomic\fP\&. .SS "template void \fBstd::atomic\fP< _Tp >::store (_Tp __i, \fBmemory_order\fP __m = \fCmemory_order_seq_cst\fP)\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB269\fP of file \fBatomic\fP\&. .SS "template void \fBstd::atomic\fP< _Tp >::store (_Tp __i, \fBmemory_order\fP __m = \fCmemory_order_seq_cst\fP) volatile\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB275\fP of file \fBatomic\fP\&. .SH "Member Data Documentation" .PP .SS "template constexpr bool \fBstd::atomic\fP< _Tp >::is_always_lock_free\fC [static]\fP, \fC [constexpr]\fP" .PP Definition at line \fB264\fP of file \fBatomic\fP\&. .SH "Author" .PP Generated automatically by Doxygen for libstdc++ from the source code\&.