类 | |
struct | BlockIndexEntry |
struct | BlockIndexHeader |
Public 成员函数 | |
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 () | |
![]() | |
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 () |
![]() | |
ConcurrentQueueProducerTypelessBase () | |
Private 成员函数 | |
bool | new_block_index (size_t numberOfFilledSlotsToExpose) |
Private 属性 | |
std::atomic< BlockIndexHeader * > | blockIndex |
BlockIndexEntry * | pr_blockIndexEntries |
size_t | pr_blockIndexFront |
void * | pr_blockIndexRaw |
size_t | pr_blockIndexSize |
size_t | pr_blockIndexSlotsUsed |
额外继承的成员函数 | |
![]() | |
bool | isExplicit |
ConcurrentQueue * | parent |
![]() | |
std::atomic< bool > | inactive |
ConcurrentQueueProducerTypelessBase * | next |
ProducerToken * | token |
![]() | |
std::atomic< index_t > | dequeueOptimisticCount |
std::atomic< index_t > | dequeueOvercommit |
std::atomic< index_t > | headIndex |
Block * | tailBlock |
std::atomic< index_t > | tailIndex |
在文件 ConcurrentQueue.h 第 1818 行定义.
|
inlineexplicit |
在文件 ConcurrentQueue.h 第 1820 行定义.
|
inline |
在文件 ConcurrentQueue.h 第 1838 行定义.
|
inline |
在文件 ConcurrentQueue.h 第 1999 行定义.
引用了 BLOCK_SIZE, blockIndex, moodycamel::ProducerBase::dequeueOptimisticCount, moodycamel::ProducerBase::dequeueOvercommit, moodycamel::ProducerBase::headIndex, moodycamel::details::likely(), MOODYCAMEL_NOEXCEPT_ASSIGN , 以及 moodycamel::ProducerBase::tailIndex.
|
inline |
在文件 ConcurrentQueue.h 第 2283 行定义.
引用了 BLOCK_SIZE, blockIndex, moodycamel::ProducerBase::dequeueOptimisticCount, moodycamel::ProducerBase::dequeueOvercommit, moodycamel::details::deref_noexcept(), moodycamel::ProducerBase::headIndex, MOODYCAMEL_CATCH, MOODYCAMEL_NOEXCEPT_ASSIGN, MOODYCAMEL_RETHROW, MOODYCAMEL_TRY , 以及 moodycamel::ProducerBase::tailIndex.
|
inline |
在文件 ConcurrentQueue.h 第 1907 行定义.
|
inline |
在文件 ConcurrentQueue.h 第 2095 行定义.
引用了 BLOCK_SIZE, blockIndex, moodycamel::CannotAlloc, moodycamel::details::deref_noexcept(), moodycamel::ProducerBase::headIndex, MAX_SUBQUEUE_SIZE, MOODYCAMEL_CATCH, MOODYCAMEL_NOEXCEPT_CTOR, MOODYCAMEL_RETHROW, MOODYCAMEL_TRY, new_block_index(), moodycamel::Block::next, moodycamel::ProducerBase::parent, pr_blockIndexFront, pr_blockIndexRaw, pr_blockIndexSize, pr_blockIndexSlotsUsed, moodycamel::ProducerBase::tailBlock , 以及 moodycamel::ProducerBase::tailIndex.
|
inlineprivate |
在文件 ConcurrentQueue.h 第 2392 行定义.
引用了 blockIndex, pr_blockIndexEntries, pr_blockIndexFront, pr_blockIndexRaw, pr_blockIndexSize, pr_blockIndexSlotsUsed , 以及 moodycamel::ExplicitProducer::BlockIndexHeader::size.
被这些函数引用 enqueue_bulk(), try_dequeue_bulk() , 以及 try_dequeue_from_producer().
|
private |
在文件 ConcurrentQueue.h 第 2433 行定义.
被这些函数引用 dequeue(), dequeue_bulk(), enqueue_bulk(), new_block_index() , 以及 try_dequeue_from_producer().
|
private |
在文件 ConcurrentQueue.h 第 2439 行定义.
被这些函数引用 new_block_index() , 以及 try_dequeue_bulk().
|
private |
在文件 ConcurrentQueue.h 第 2438 行定义.
被这些函数引用 enqueue_bulk(), new_block_index(), try_dequeue_bulk() , 以及 try_dequeue_from_producer().
|
private |
在文件 ConcurrentQueue.h 第 2440 行定义.
被这些函数引用 enqueue_bulk(), new_block_index() , 以及 try_dequeue_from_producer().
|
private |
在文件 ConcurrentQueue.h 第 2437 行定义.
被这些函数引用 enqueue_bulk(), new_block_index(), try_dequeue_bulk(), try_dequeue_bulk() , 以及 try_dequeue_from_producer().
|
private |
在文件 ConcurrentQueue.h 第 2436 行定义.
被这些函数引用 enqueue_bulk(), new_block_index(), try_dequeue_bulk() , 以及 try_dequeue_from_producer().