atomicops.h File Reference
`#include <cassert>`
`#include <type_traits>`
`#include <atomic>`
`#include <utility>`

Go to the source code of this file.

## Classes

class | moodycamel::weak_atomic< T >
class | moodycamel::spsc_sema::LightweightSemaphore

## Namespaces

namespace | moodycamel
namespace | moodycamel::spsc_sema

## Macros

#define | AE_ARCH_UNKNOWN
#define | AE_UNUSED(x)
#define | AE_FORCEINLINE inline
#define | AE_ALIGN(x)
#define | AE_USE_STD_ATOMIC_FOR_WEAK_ATOMIC

## Enumerations

enum | moodycamel::memory_order { moodycamel::memory_order_relaxed , moodycamel::memory_order_acquire , moodycamel::memory_order_release , moodycamel::memory_order_acq_rel , moodycamel::memory_order_seq_cst , moodycamel::memory_order_sync = memory_order_seq_cst }

## Functions

AE_FORCEINLINE void | moodycamel::compiler_fence (memory_order order)
AE_FORCEINLINE void | moodycamel::fence (memory_order order)

## Macro Definition Documentation

## AE_ALIGN

#define AE_ALIGN | ( |  | x | ) |

Value:
__attribute__((aligned(x)))

## AE_ARCH_UNKNOWN

#define AE_ARCH_UNKNOWN

## AE_FORCEINLINE

#define AE_FORCEINLINE inline

Referenced by moodycamel::compiler_fence(), moodycamel::BlockingReaderWriterQueue< T, MAX_BLOCK_SIZE >::enqueue(), moodycamel::BlockingReaderWriterQueue< T, MAX_BLOCK_SIZE >::enqueue(), moodycamel::ReaderWriterQueue< T, MAX_BLOCK_SIZE >::enqueue(), moodycamel::ReaderWriterQueue< T, MAX_BLOCK_SIZE >::enqueue(), moodycamel::fence(), moodycamel::weak_atomic< T >::fetch_add_acquire(), moodycamel::weak_atomic< T >::fetch_add_release(), moodycamel::weak_atomic< T >::load(), moodycamel::weak_atomic< Block * >::operator Block *(), moodycamel::weak_atomic< T >::operator=(), moodycamel::weak_atomic< T >::operator=(), moodycamel::BlockingReaderWriterQueue< T, MAX_BLOCK_SIZE >::peek(), moodycamel::BlockingReaderWriterQueue< T, MAX_BLOCK_SIZE >::pop(), moodycamel::BlockingReaderWriterQueue< T, MAX_BLOCK_SIZE >::size_approx(), moodycamel::BlockingReaderWriterQueue< T, MAX_BLOCK_SIZE >::try_enqueue(), moodycamel::BlockingReaderWriterQueue< T, MAX_BLOCK_SIZE >::try_enqueue(), moodycamel::ReaderWriterQueue< T, MAX_BLOCK_SIZE >::try_enqueue(), and moodycamel::ReaderWriterQueue< T, MAX_BLOCK_SIZE >::try_enqueue().

## AE_UNUSED

#define AE_UNUSED | ( |  | x | ) |

Value:
((void)x)

Referenced by moodycamel::BlockingReaderWriterQueue< T, MAX_BLOCK_SIZE >::pop(), moodycamel::ReaderWriterQueue< T, MAX_BLOCK_SIZE >::pop(), moodycamel::BlockingReaderWriterQueue< T, MAX_BLOCK_SIZE >::try_dequeue(), moodycamel::ReaderWriterQueue< T, MAX_BLOCK_SIZE >::try_dequeue(), and moodycamel::BlockingReaderWriterQueue< T, MAX_BLOCK_SIZE >::wait_dequeue().

## AE_USE_STD_ATOMIC_FOR_WEAK_ATOMIC

#define AE_USE_STD_ATOMIC_FOR_WEAK_ATOMIC