#include <string.h>#include <boost/memory_order.hpp>#include <boost/smart_ptr/detail/spinlock_pool.hpp>

Go to the source code of this file.
Classes | |
| class | boost::detail::atomic::base_atomic< T, C, Size, Sign > |
| class | boost::detail::atomic::base_atomic< T *, void *, Size, Sign > |
| class | boost::detail::atomic::base_atomic< T, int, Size, Sign > |
| class | boost::detail::atomic::base_atomic< void *, void *, Size, Sign > |
Namespaces | |
| namespace | boost |
| namespace | boost::detail |
| namespace | boost::detail::atomic |
Defines | |
| #define | BOOST_ATOMIC_DECLARE_ADDITIVE_OPERATORS |
| #define | BOOST_ATOMIC_DECLARE_BASE_OPERATORS |
| #define | BOOST_ATOMIC_DECLARE_BIT_OPERATORS |
| #define | BOOST_ATOMIC_DECLARE_INTEGRAL_OPERATORS |
| #define | BOOST_ATOMIC_DECLARE_POINTER_OPERATORS |
Functions | |
| static memory_order | boost::detail::atomic::calculate_failure_order (memory_order order) |
operator value_type(void) volatile const \ { \ return load(memory_order_seq_cst); \ } \ \ this_type & \ operator=(value_type v) volatile \ { \ store(v, memory_order_seq_cst); \ return *const_cast<this_type *>(this); \ } \ \ bool \ compare_exchange_strong( \ value_type & expected, \ value_type desired, \ memory_order order = memory_order_seq_cst) volatile \ { \ return compare_exchange_strong(expected, desired, order, calculate_failure_order(order)); \ } \ \ bool \ compare_exchange_weak( \ value_type & expected, \ value_type desired, \ memory_order order = memory_order_seq_cst) volatile \ { \ return compare_exchange_weak(expected, desired, order, calculate_failure_order(order)); \ } \ \
value_type \
operator&=(difference_type v) volatile \
{ \
return fetch_and(v) & v; \
} \
\
value_type \
operator|=(difference_type v) volatile \
{ \
return fetch_or(v) | v; \
} \
\
value_type \
operator^=(difference_type v) volatile \
{ \
return fetch_xor(v) ^ v; \
} \