C++11 Atomic library support. More...
C++11 Atomic library support.
<atomic>. This is used by default
boost.atomicfor boost 1.54 and above. To use it you should define
CDS_USE_BOOST_ATOMICfor your compiler invocation, for example, for gcc specify
-DCDS_USE_BOOST_ATOMICin command line
libcds implementation of atomic operation according to C++11 standard as specified in N3242, p.29.
libcds implementation is not the full standard compliant, it provides only C++ part of standard, for example,
libcds has no static initialization of the atomic variables and some other C features. However, that imlementation is enough for the library purposes. Supported architecture: x86, amd64, ia64 (Itanium) 64bit, 64bit Sparc. To use
libcds atomic you should define
CDS_USE_LIBCDS_ATOMIC in the compiler command line (
-DCDS_USE_LIBCDS_ATOMIC for gcc/clang).
libcdsdoesn't use native
<atomic>due some problems. Instead,
libcdsatomic is used by default, or you can try to use
The library defines
atomics alias for atomic namespace:
namespace atomics = stdfor STL
namespace atomics = boostfor
namespace atomics = cds::cxx11_atomicfor library-provided atomic implementation