类 moodycamel::ExplicitProducer 继承关系图:
moodycamel::ExplicitProducer 的协作图:类 | |
| 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 () | |
Public 成员函数 继承自 moodycamel::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 成员函数 继承自 moodycamel::details::ConcurrentQueueProducerTypelessBase | |
| 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 |
额外继承的成员函数 | |
Public 属性 继承自 moodycamel::ProducerBase | |
| bool | isExplicit |
| ConcurrentQueue * | parent |
Public 属性 继承自 moodycamel::details::ConcurrentQueueProducerTypelessBase | |
| std::atomic< bool > | inactive |
| ConcurrentQueueProducerTypelessBase * | next |
| ProducerToken * | token |
Protected 属性 继承自 moodycamel::ProducerBase | |
| 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_from_producer().
|
private |
在文件 ConcurrentQueue.h 第 2436 行定义.
被这些函数引用 enqueue_bulk(), new_block_index(), try_dequeue_bulk() , 以及 try_dequeue_from_producer().