#include <readerwriterqueue.h>
Classes | |
struct | Block |
struct | ReentrantGuard |
Public Types | |
typedef T | value_type |
Public Member Functions | |
template<typename... Args> | |
AE_FORCEINLINE bool | emplace (Args &&...args) AE_NO_TSAN |
AE_FORCEINLINE bool | enqueue (T const &element) AE_NO_TSAN |
AE_FORCEINLINE bool | enqueue (T &&element) AE_NO_TSAN |
ReaderWriterQueue & | operator= (ReaderWriterQueue &&other) AE_NO_TSAN |
T * | peek () AE_NO_TSAN |
bool | pop () AE_NO_TSAN |
AE_NO_TSAN | ReaderWriterQueue (size_t maxSize=15) |
AE_NO_TSAN | ReaderWriterQueue (ReaderWriterQueue &&other) |
size_t | size_approx () const AE_NO_TSAN |
template<typename U > | |
bool | try_dequeue (U &result) AE_NO_TSAN |
template<typename... Args> | |
AE_FORCEINLINE bool | try_emplace (Args &&...args) AE_NO_TSAN |
AE_FORCEINLINE bool | try_enqueue (T const &element) AE_NO_TSAN |
AE_FORCEINLINE bool | try_enqueue (T &&element) AE_NO_TSAN |
AE_NO_TSAN | ~ReaderWriterQueue () |
Private Types | |
enum | AllocationMode { CanAlloc, CannotAlloc } |
Private Member Functions | |
template<AllocationMode canAlloc, typename... Args> | |
bool | inner_enqueue (Args &&...args) AE_NO_TSAN |
ReaderWriterQueue & | operator= (ReaderWriterQueue const &) |
ReaderWriterQueue (ReaderWriterQueue const &) | |
Static Private Member Functions | |
template<typename U > | |
static AE_FORCEINLINE char * | align_for (char *ptr) AE_NO_TSAN |
static AE_FORCEINLINE size_t | ceilToPow2 (size_t x) |
static Block * | make_block (size_t capacity) AE_NO_TSAN |
Private Attributes | |
char | cachelineFiller [MOODYCAMEL_CACHE_LINE_SIZE-sizeof(weak_atomic< Block * >)] |
bool | dequeuing |
bool | enqueuing |
weak_atomic< Block * > | frontBlock |
size_t | largestBlockSize |
weak_atomic< Block * > | tailBlock |
Definition at line 60 of file readerwriterqueue.h.
typedef T moodycamel::ReaderWriterQueue< T, MAX_BLOCK_SIZE >::value_type |
Definition at line 83 of file readerwriterqueue.h.
|
private |
Enumerator | |
---|---|
CanAlloc | |
CannotAlloc |
Definition at line 495 of file readerwriterqueue.h.
|
inlineexplicit |
Definition at line 89 of file readerwriterqueue.h.
|
inline |
Definition at line 150 of file readerwriterqueue.h.
|
inline |
Definition at line 189 of file readerwriterqueue.h.
|
inlineprivate |
Definition at line 612 of file readerwriterqueue.h.
|
inlinestaticprivate |
Definition at line 634 of file readerwriterqueue.h.
|
inlinestaticprivate |
Definition at line 619 of file readerwriterqueue.h.
|
inline |
Definition at line 260 of file readerwriterqueue.h.
|
inline |
Definition at line 244 of file readerwriterqueue.h.
|
inline |
Definition at line 252 of file readerwriterqueue.h.
|
inlineprivate |
Definition at line 499 of file readerwriterqueue.h.
|
inlinestaticprivate |
Definition at line 693 of file readerwriterqueue.h.
|
inline |
Definition at line 175 of file readerwriterqueue.h.
|
inlineprivate |
Definition at line 615 of file readerwriterqueue.h.
|
inline |
Definition at line 369 of file readerwriterqueue.h.
|
inline |
Definition at line 411 of file readerwriterqueue.h.
|
inline |
Definition at line 478 of file readerwriterqueue.h.
|
inline |
Definition at line 270 of file readerwriterqueue.h.
|
inline |
Definition at line 235 of file readerwriterqueue.h.
|
inline |
Definition at line 219 of file readerwriterqueue.h.
|
inline |
Definition at line 227 of file readerwriterqueue.h.
|
private |
Definition at line 711 of file readerwriterqueue.h.
|
private |
Definition at line 718 of file readerwriterqueue.h.
|
private |
Definition at line 717 of file readerwriterqueue.h.
|
private |
Definition at line 709 of file readerwriterqueue.h.
|
private |
Definition at line 714 of file readerwriterqueue.h.
|
private |
Definition at line 712 of file readerwriterqueue.h.