Classes | |
struct | BlockIndexEntry |
struct | BlockIndexHeader |
Public Member Functions | |
template<typename U > | |
bool | dequeue (U &element) |
template<typename It > | |
size_t | dequeue_bulk (It &itemFirst, size_t max) |
template<AllocationMode allocMode, typename U > | |
bool | enqueue (U &&element) |
template<AllocationMode allocMode, typename It > | |
bool | enqueue_bulk (It itemFirst, size_t count) |
ExplicitProducer (ConcurrentQueue *parent) | |
~ExplicitProducer () | |
Public Member Functions inherited from moodycamel::ConcurrentQueue< T, Traits >::ProducerBase | |
template<typename U > | |
bool | dequeue (U &element) |
template<typename It > | |
size_t | dequeue_bulk (It &itemFirst, size_t max) |
index_t | getTail () const |
ProducerBase * | next_prod () const |
ProducerBase (ConcurrentQueue *parent_, bool isExplicit_) | |
size_t | size_approx () const |
virtual | ~ProducerBase () |
Public Member Functions inherited from moodycamel::details::ConcurrentQueueProducerTypelessBase | |
ConcurrentQueueProducerTypelessBase () | |
Private Member Functions | |
bool | new_block_index (size_t numberOfFilledSlotsToExpose) |
Private Attributes | |
std::atomic< BlockIndexHeader * > | blockIndex |
BlockIndexEntry * | pr_blockIndexEntries |
size_t | pr_blockIndexFront |
void * | pr_blockIndexRaw |
size_t | pr_blockIndexSize |
size_t | pr_blockIndexSlotsUsed |
Additional Inherited Members | |
Public Attributes inherited from moodycamel::ConcurrentQueue< T, Traits >::ProducerBase | |
bool | isExplicit |
ConcurrentQueue * | parent |
Public Attributes inherited from moodycamel::details::ConcurrentQueueProducerTypelessBase | |
std::atomic< bool > | inactive |
ConcurrentQueueProducerTypelessBase * | next |
ProducerToken * | token |
Protected Attributes inherited from moodycamel::ConcurrentQueue< T, Traits >::ProducerBase | |
std::atomic< index_t > | dequeueOptimisticCount |
std::atomic< index_t > | dequeueOvercommit |
std::atomic< index_t > | headIndex |
Block * | tailBlock |
std::atomic< index_t > | tailIndex |
Definition at line 1710 of file ConcurrentQueue.h.
|
inlineexplicit |
Definition at line 1712 of file ConcurrentQueue.h.
References moodycamel::details::ceil_to_pow_2(), and moodycamel::ConcurrentQueue< T, Traits >::initialBlockPoolSize.
|
inline |
Definition at line 1729 of file ConcurrentQueue.h.
References moodycamel::ConcurrentQueue< T, Traits >::Block::next.
|
inline |
Definition at line 1898 of file ConcurrentQueue.h.
References moodycamel::details::likely(), and MOODYCAMEL_NOEXCEPT_ASSIGN.
|
inline |
Definition at line 2183 of file ConcurrentQueue.h.
References moodycamel::details::deref_noexcept(), MOODYCAMEL_CATCH, MOODYCAMEL_NOEXCEPT_ASSIGN, MOODYCAMEL_RETHROW, and MOODYCAMEL_TRY.
|
inline |
Definition at line 1795 of file ConcurrentQueue.h.
References MOODYCAMEL_CATCH, MOODYCAMEL_NOEXCEPT_CTOR, MOODYCAMEL_RETHROW, and MOODYCAMEL_TRY.
|
inline |
Definition at line 1998 of file ConcurrentQueue.h.
References moodycamel::details::deref_noexcept(), MOODYCAMEL_CATCH, MOODYCAMEL_NOEXCEPT_CTOR, MOODYCAMEL_RETHROW, MOODYCAMEL_TRY, and moodycamel::ConcurrentQueue< T, Traits >::Block::next.
|
inlineprivate |
Definition at line 2291 of file ConcurrentQueue.h.
References moodycamel::ConcurrentQueue< T, Traits >::ExplicitProducer::BlockIndexHeader::front, and moodycamel::ConcurrentQueue< T, Traits >::ExplicitProducer::BlockIndexHeader::size.
|
private |
Definition at line 2331 of file ConcurrentQueue.h.
|
private |
Definition at line 2337 of file ConcurrentQueue.h.
|
private |
Definition at line 2336 of file ConcurrentQueue.h.
|
private |
Definition at line 2338 of file ConcurrentQueue.h.
|
private |
Definition at line 2335 of file ConcurrentQueue.h.
|
private |
Definition at line 2334 of file ConcurrentQueue.h.