Specializations for the std::atomic class template are provided
for the integral types and pointer types. For the integral types, these
specializations provide atomic addition, subtraction and bitwise operations
in addition to the operations provided by the primary template. For pointer
types, the specializations provide atomic pointer arithmetic in addition
to the operations provided by the primary template.
Specializations are provided for the following integral types:
std::atomic<char> std::atomic<signed char> std::atomic<unsigned char> std::atomic<short> std::atomic<unsigned short> std::atomic<int> std::atomic<unsigned> std::atomic<long> std::atomic<unsigned long> std::atomic<long long> std::atomic<unsigned long long> std::atomic<wchar_t> std::atomic<char16_t> std::atomic<char32_t>
and for
std::atomic<T*>
for all types T.
Header
#include <atomic>