#include <readerwriterqueue.h>
Classes | |
struct | Block |
struct | ReentrantGuard |
Public Member Functions | |
AE_FORCEINLINE bool | enqueue (T const &element) |
AE_FORCEINLINE bool | enqueue (T &&element) |
T * | peek () |
bool | pop () |
ReaderWriterQueue (size_t maxSize=15) | |
size_t | size_approx () const |
template<typename U > | |
bool | try_dequeue (U &result) |
AE_FORCEINLINE bool | try_enqueue (T const &element) |
AE_FORCEINLINE bool | try_enqueue (T &&element) |
~ReaderWriterQueue () | |
Private Types | |
enum | AllocationMode { CanAlloc, CannotAlloc } |
Private Member Functions | |
template<AllocationMode canAlloc, typename U > | |
bool | inner_enqueue (U &&element) |
ReaderWriterQueue & | operator= (ReaderWriterQueue const &) |
ReaderWriterQueue (ReaderWriterQueue const &) | |
Static Private Member Functions | |
template<typename U > | |
static AE_FORCEINLINE char * | align_for (char *ptr) |
static AE_FORCEINLINE size_t | ceilToPow2 (size_t x) |
static Block * | make_block (size_t capacity) |
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 53 of file readerwriterqueue.h.
|
private |
Enumerator | |
---|---|
CanAlloc | |
CannotAlloc |
Definition at line 447 of file readerwriterqueue.h.
|
inlineexplicit |
Definition at line 80 of file readerwriterqueue.h.
|
inline |
Definition at line 148 of file readerwriterqueue.h.
|
inlineprivate |
Definition at line 558 of file readerwriterqueue.h.
|
inlinestaticprivate |
Definition at line 583 of file readerwriterqueue.h.
|
inlinestaticprivate |
Definition at line 567 of file readerwriterqueue.h.
|
inline |
Definition at line 195 of file readerwriterqueue.h.
|
inline |
Definition at line 203 of file readerwriterqueue.h.
|
inlineprivate |
Definition at line 454 of file readerwriterqueue.h.
|
inlinestaticprivate |
Definition at line 658 of file readerwriterqueue.h.
|
inlineprivate |
Definition at line 563 of file readerwriterqueue.h.
|
inline |
Definition at line 314 of file readerwriterqueue.h.
|
inline |
Definition at line 359 of file readerwriterqueue.h.
|
inline |
Definition at line 430 of file readerwriterqueue.h.
|
inline |
Definition at line 212 of file readerwriterqueue.h.
|
inline |
Definition at line 179 of file readerwriterqueue.h.
|
inline |
Definition at line 187 of file readerwriterqueue.h.
|
private |
Definition at line 677 of file readerwriterqueue.h.
|
private |
Definition at line 684 of file readerwriterqueue.h.
|
private |
Definition at line 683 of file readerwriterqueue.h.
|
private |
Definition at line 675 of file readerwriterqueue.h.
|
private |
Definition at line 680 of file readerwriterqueue.h.
|
private |
Definition at line 678 of file readerwriterqueue.h.