#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 &&element) AE_NO_TSAN |
AE_FORCEINLINE bool | enqueue (T const &element) AE_NO_TSAN |
size_t | max_capacity () const |
ReaderWriterQueue & | operator= (ReaderWriterQueue &&other) AE_NO_TSAN |
T * | peek () const AE_NO_TSAN |
bool | pop () AE_NO_TSAN |
AE_NO_TSAN | ReaderWriterQueue (ReaderWriterQueue &&other) |
AE_NO_TSAN | ReaderWriterQueue (size_t size=15) |
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 &&element) AE_NO_TSAN |
AE_FORCEINLINE bool | try_enqueue (T const &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 61 of file readerwriterqueue.h.
typedef T moodycamel::ReaderWriterQueue< T, MAX_BLOCK_SIZE >::value_type |
Definition at line 84 of file readerwriterqueue.h.
|
private |
Enumerator | |
---|---|
CanAlloc | |
CannotAlloc |
Definition at line 537 of file readerwriterqueue.h.
|
inlineexplicit |
Definition at line 90 of file readerwriterqueue.h.
|
inline |
Definition at line 157 of file readerwriterqueue.h.
|
inline |
Definition at line 197 of file readerwriterqueue.h.
|
inlineprivate |
Definition at line 664 of file readerwriterqueue.h.
|
inlinestaticprivate |
Definition at line 689 of file readerwriterqueue.h.
|
inlinestaticprivate |
Definition at line 673 of file readerwriterqueue.h.
|
inline |
Definition at line 269 of file readerwriterqueue.h.
|
inline |
Definition at line 261 of file readerwriterqueue.h.
|
inline |
Definition at line 253 of file readerwriterqueue.h.
|
inlineprivate |
Definition at line 545 of file readerwriterqueue.h.
|
inlinestaticprivate |
Definition at line 759 of file readerwriterqueue.h.
|
inline |
Definition at line 522 of file readerwriterqueue.h.
|
inline |
Definition at line 183 of file readerwriterqueue.h.
|
inlineprivate |
Definition at line 669 of file readerwriterqueue.h.
|
inline |
Definition at line 381 of file readerwriterqueue.h.
|
inline |
Definition at line 426 of file readerwriterqueue.h.
|
inline |
Definition at line 497 of file readerwriterqueue.h.
|
inline |
Definition at line 279 of file readerwriterqueue.h.
|
inline |
Definition at line 244 of file readerwriterqueue.h.
|
inline |
Definition at line 236 of file readerwriterqueue.h.
|
inline |
Definition at line 228 of file readerwriterqueue.h.
|
private |
Definition at line 778 of file readerwriterqueue.h.
|
mutableprivate |
Definition at line 785 of file readerwriterqueue.h.
|
private |
Definition at line 784 of file readerwriterqueue.h.
|
private |
Definition at line 776 of file readerwriterqueue.h.
|
private |
Definition at line 781 of file readerwriterqueue.h.
|
private |
Definition at line 779 of file readerwriterqueue.h.