cstdatomic(3)
πΈ NAME πΈ
okay so this is cstdatomic(3) from the Library Functions Manual, and the NAME entry is literally:
cstdatomic -
...yes, thatβs the whole thing. The dash is giving mysterious main character energy and honestly? respect. π
β¨ SYNOPSIS β¨
bestie, this page is a whole vibe check of declarations. Buckle up, because we are keeping every single one. π«Ά
π Classes π
struct std::atomic< _Tp >β the original label saysatomic 29.4.3, generic atomic type, primary class template.struct std::atomic< _Tp * >β partial specialization for pointer types.struct std::atomic< bool >β explicit specialization forbool.struct std::atomic< char >β explicit specialization forchar.struct std::atomic< char16_t >β explicit specialization forchar16_t.struct std::atomic< char32_t >β explicit specialization forchar32_t.struct std::atomic< int >β explicit specialization forint.struct std::atomic< long >β explicit specialization forlong.struct std::atomic< long long >β explicit specialization forlong long.struct std::atomic< short >β explicit specialization forshort.struct std::atomic< signed char >β explicit specialization forsigned char.struct std::atomic< unsigned char >β explicit specialization forunsigned char.struct std::atomic< unsigned int >β explicit specialization forunsigned int.struct std::atomic< unsigned long >β explicit specialization forunsigned long.struct std::atomic< unsigned long long >β explicit specialization forunsigned long long.struct std::atomic< unsigned short >β explicit specialization forunsigned short.struct std::atomic< void * >β explicit specialization forvoid*.struct std::atomic< wchar_t >β explicit specialization forwchar_t.
π¦ Namespaces π¦
namespace stdβ yep, everything is hanging out instd. icon behavior.
π Defines π
#define _GLIBCXX_STDATOMICβ thatβs the define, exactly as written, no edits.
π₯ Functions π₯
hereβs the full roster, signatures kept exactly because we do not mess with code, periodt:
memory_order std::__calculate_memory_order (memory_order __m)template<typename _ITp > bool std::atomic_compare_exchange_strong (volatile __atomic_base< _ITp > *__a, _ITp *__i1, _ITp __i2)bool std::atomic_compare_exchange_strong (volatile atomic_bool *__a, bool *__i1, bool __i2)bool std::atomic_compare_exchange_strong (volatile atomic_address *__a, void **__v1, void *__v2)template<typename _ITp > bool std::atomic_compare_exchange_strong_explicit (volatile __atomic_base< _ITp > *__a, _ITp *__i1, _ITp __i2, memory_order __m1, memory_order __m2)bool std::atomic_compare_exchange_strong_explicit (volatile atomic_bool *__a, bool *__i1, bool __i2, memory_order __m1, memory_order __m2)bool std::atomic_compare_exchange_strong_explicit (volatile atomic_address *__a, void **__v1, void *__v2, memory_order __m1, memory_order __m2)template<typename _ITp > bool std::atomic_compare_exchange_weak (volatile __atomic_base< _ITp > *__a, _ITp *__i1, _ITp __i2)bool std::atomic_compare_exchange_weak (volatile atomic_bool *__a, bool *__i1, bool __i2)bool std::atomic_compare_exchange_weak (volatile atomic_address *__a, void **__v1, void *__v2)template<typename _ITp > bool std::atomic_compare_exchange_weak_explicit (volatile __atomic_base< _ITp > *__a, _ITp *__i1, _ITp __i2, memory_order __m1, memory_order __m2)bool std::atomic_compare_exchange_weak_explicit (volatile atomic_bool *__a, bool *__i1, bool __i2, memory_order __m1, memory_order __m2)bool std::atomic_compare_exchange_weak_explicit (volatile atomic_address *__a, void **__v1, void *__v2, memory_order __m1, memory_order __m2)template<typename _ITp > _ITp std::atomic_exchange (volatile __atomic_base< _ITp > *__a, _ITp __i)bool std::atomic_exchange (volatile atomic_bool *__a, bool __i)void * std::atomic_exchange (volatile atomic_address *__a, void *__v)template<typename _ITp > _ITp std::atomic_exchange_explicit (volatile __atomic_base< _ITp > *__a, _ITp __i, memory_order __m)bool std::atomic_exchange_explicit (volatile atomic_bool *__a, bool __i, memory_order __m)void * std::atomic_exchange_explicit (volatile atomic_address *__a, void *__v, memory_order __m)template<typename _ITp > _ITp std::atomic_fetch_add (volatile __atomic_base< _ITp > *__a, _ITp __i)void * std::atomic_fetch_add (volatile atomic_address *__a, ptrdiff_t __d)template<typename _ITp > _ITp std::atomic_fetch_add_explicit (volatile __atomic_base< _ITp > *__a, _ITp __i, memory_order __m)void * std::atomic_fetch_add_explicit (volatile atomic_address *__a, ptrdiff_t __d, memory_order __m)template<typename _ITp > _ITp std::atomic_fetch_and (volatile __atomic_base< _ITp > *__a, _ITp __i)template<typename _ITp > _ITp std::atomic_fetch_and_explicit (volatile __atomic_base< _ITp > *__a, _ITp __i, memory_order __m)template<typename _ITp > _ITp std::atomic_fetch_or (volatile __atomic_base< _ITp > *__a, _ITp __i)template<typename _ITp > _ITp std::atomic_fetch_or_explicit (volatile __atomic_base< _ITp > *__a, _ITp __i, memory_order __m)template<typename _ITp > _ITp std::atomic_fetch_sub (volatile __atomic_base< _ITp > *__a, _ITp __i)void * std::atomic_fetch_sub (volatile atomic_address *__a, ptrdiff_t __d)template<typename _ITp > _ITp std::atomic_fetch_sub_explicit (volatile __atomic_base< _ITp > *__a, _ITp __i, memory_order __m)void * std::atomic_fetch_sub_explicit (volatile atomic_address *__a, ptrdiff_t __d, memory_order __m)template<typename _ITp > _ITp std::atomic_fetch_xor (volatile __atomic_base< _ITp > *__a, _ITp __i)template<typename _ITp > _ITp std::atomic_fetch_xor_explicit (volatile __atomic_base< _ITp > *__a, _ITp __i, memory_order __m)void std::atomic_flag_clear_explicit (volatile atomic_flag *__a, memory_order __m)bool std::atomic_flag_test_and_set_explicit (volatile atomic_flag *__a, memory_order __m)template<typename _ITp > bool std::atomic_is_lock_free (const volatile __atomic_base< _ITp > *__a)bool std::atomic_is_lock_free (const volatile atomic_bool *__a)bool std::atomic_is_lock_free (const volatile atomic_address *__a)template<typename _ITp > _ITp std::atomic_load (const volatile __atomic_base< _ITp > *__a)bool std::atomic_load (const volatile atomic_bool *__a)void * std::atomic_load (const volatile atomic_address *__a)template<typename _ITp > _ITp std::atomic_load_explicit (const volatile __atomic_base< _ITp > *__a, memory_order __m)bool std::atomic_load_explicit (const volatile atomic_bool *__a, memory_order __m)void * std::atomic_load_explicit (const volatile atomic_address *__a, memory_order __m)template<typename _ITp > void std::atomic_store (volatile __atomic_base< _ITp > *__a, _ITp __i)void std::atomic_store (volatile atomic_bool *__a, bool __i)void std::atomic_store (volatile atomic_address *__a, void *__v)template<typename _ITp > void std::atomic_store_explicit (volatile __atomic_base< _ITp > *__a, _ITp __i, memory_order __m)void std::atomic_store_explicit (volatile atomic_bool *__a, bool __i, memory_order __m)void std::atomic_store_explicit (volatile atomic_address *__a, void *__v, memory_order __m)template<typename _Tp > _Tp std::kill_dependency (_Tp __y)
π Detailed Description π
okay so the important lore:
- This is a Standard C++ Library file. You should include this file in your programs, rather than any of the
'*.h'implementation files. - This is the C++ version of the Standard C Library header
stdatomic.h, and its contents are(mostly)the same as that header, but they are all contained in the namespacestdβ except for names which are defined as macros in C. - Definition in file
cstdatomic.
π Author π
Generated automatically by Doxygen for libstdc++ from the source code. no cap, the robots wrote this one. π€π
mwah π β source/version: libstdc++, date: 21 Apr 2009 πβ¨ thatβs the whole cstdatomic(3) footer energy, bestie.
π¦ where this page comes from
- nixpkgs unstable: std-man-pages 4.4.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms