Public 成员函数 | |
Block () | |
template<InnerQueueContext context> | |
bool | is_empty () const |
T const * | operator[] (index_t idx) const MOODYCAMEL_NOEXCEPT |
T * | operator[] (index_t idx) MOODYCAMEL_NOEXCEPT |
template<InnerQueueContext context> | |
void | reset_empty () |
template<InnerQueueContext context> | |
void | set_all_empty () |
template<InnerQueueContext context> | |
bool | set_empty (index_t i) |
template<InnerQueueContext context> | |
bool | set_many_empty (index_t i, size_t count) |
Public 属性 | |
bool | dynamicallyAllocated |
std::atomic< size_t > | elementsCompletelyDequeued |
std::atomic< bool > | emptyFlags [BLOCK_SIZE<=EXPLICIT_BLOCK_EMPTY_COUNTER_THRESHOLD ? BLOCK_SIZE :1] |
std::atomic< Block * > | freeListNext |
std::atomic< std::uint32_t > | freeListRefs |
Block * | next |
std::atomic< bool > | shouldBeOnFreeList |
Private 属性 | ||
union { | ||
details::max_align_t dummy | ||
char elements [sizeof(T) *BLOCK_SIZE] | ||
}; | ||
在文件 ConcurrentQueue.h 第 1487 行定义.
|
inline |
在文件 ConcurrentQueue.h 第 1489 行定义.
|
inline |
在文件 ConcurrentQueue.h 第 1498 行定义.
引用了 moodycamel::ConcurrentQueue< T, Traits >::BLOCK_SIZE, moodycamel::ConcurrentQueue< T, Traits >::Block::elementsCompletelyDequeued, moodycamel::ConcurrentQueue< T, Traits >::Block::emptyFlags, moodycamel::ConcurrentQueue< T, Traits >::EXPLICIT_BLOCK_EMPTY_COUNTER_THRESHOLD , 以及 moodycamel::ConcurrentQueue< T, Traits >::explicit_context.
|
inline |
|
inline |
|
inline |
在文件 ConcurrentQueue.h 第 1580 行定义.
引用了 moodycamel::ConcurrentQueue< T, Traits >::BLOCK_SIZE, moodycamel::ConcurrentQueue< T, Traits >::Block::elementsCompletelyDequeued, moodycamel::ConcurrentQueue< T, Traits >::Block::emptyFlags, moodycamel::ConcurrentQueue< T, Traits >::EXPLICIT_BLOCK_EMPTY_COUNTER_THRESHOLD , 以及 moodycamel::ConcurrentQueue< T, Traits >::explicit_context.
|
inline |
在文件 ConcurrentQueue.h 第 1565 行定义.
引用了 moodycamel::ConcurrentQueue< T, Traits >::BLOCK_SIZE, moodycamel::ConcurrentQueue< T, Traits >::Block::elementsCompletelyDequeued, moodycamel::ConcurrentQueue< T, Traits >::Block::emptyFlags, moodycamel::ConcurrentQueue< T, Traits >::EXPLICIT_BLOCK_EMPTY_COUNTER_THRESHOLD , 以及 moodycamel::ConcurrentQueue< T, Traits >::explicit_context.
|
inline |
在文件 ConcurrentQueue.h 第 1525 行定义.
引用了 moodycamel::ConcurrentQueue< T, Traits >::BLOCK_SIZE, moodycamel::ConcurrentQueue< T, Traits >::Block::elementsCompletelyDequeued, moodycamel::ConcurrentQueue< T, Traits >::Block::emptyFlags, moodycamel::ConcurrentQueue< T, Traits >::EXPLICIT_BLOCK_EMPTY_COUNTER_THRESHOLD , 以及 moodycamel::ConcurrentQueue< T, Traits >::explicit_context.
|
inline |
在文件 ConcurrentQueue.h 第 1544 行定义.
引用了 moodycamel::ConcurrentQueue< T, Traits >::BLOCK_SIZE, moodycamel::ConcurrentQueue< T, Traits >::Block::elementsCompletelyDequeued, moodycamel::ConcurrentQueue< T, Traits >::Block::emptyFlags, moodycamel::ConcurrentQueue< T, Traits >::EXPLICIT_BLOCK_EMPTY_COUNTER_THRESHOLD , 以及 moodycamel::ConcurrentQueue< T, Traits >::explicit_context.
union { ... } moodycamel::ConcurrentQueue< T, Traits >::Block |
details::max_align_t moodycamel::ConcurrentQueue< T, Traits >::Block::dummy |
在文件 ConcurrentQueue.h 第 1610 行定义.
bool moodycamel::ConcurrentQueue< T, Traits >::Block::dynamicallyAllocated |
char moodycamel::ConcurrentQueue< T, Traits >::Block::elements[sizeof(T) *BLOCK_SIZE] |
std::atomic<size_t> moodycamel::ConcurrentQueue< T, Traits >::Block::elementsCompletelyDequeued |
在文件 ConcurrentQueue.h 第 1614 行定义.
被这些函数引用 moodycamel::ConcurrentQueue< T, Traits >::Block::is_empty(), moodycamel::ConcurrentQueue< T, Traits >::Block::reset_empty(), moodycamel::ConcurrentQueue< T, Traits >::Block::set_all_empty(), moodycamel::ConcurrentQueue< T, Traits >::Block::set_empty() , 以及 moodycamel::ConcurrentQueue< T, Traits >::Block::set_many_empty().
std::atomic<bool> moodycamel::ConcurrentQueue< T, Traits >::Block::emptyFlags[BLOCK_SIZE<=EXPLICIT_BLOCK_EMPTY_COUNTER_THRESHOLD ? BLOCK_SIZE :1] |
在文件 ConcurrentQueue.h 第 1615 行定义.
被这些函数引用 moodycamel::ConcurrentQueue< T, Traits >::Block::is_empty(), moodycamel::ConcurrentQueue< T, Traits >::Block::reset_empty(), moodycamel::ConcurrentQueue< T, Traits >::Block::set_all_empty(), moodycamel::ConcurrentQueue< T, Traits >::Block::set_empty() , 以及 moodycamel::ConcurrentQueue< T, Traits >::Block::set_many_empty().
std::atomic<Block*> moodycamel::ConcurrentQueue< T, Traits >::Block::freeListNext |
在文件 ConcurrentQueue.h 第 1618 行定义.
std::atomic<std::uint32_t> moodycamel::ConcurrentQueue< T, Traits >::Block::freeListRefs |
在文件 ConcurrentQueue.h 第 1617 行定义.
Block* moodycamel::ConcurrentQueue< T, Traits >::Block::next |
在文件 ConcurrentQueue.h 第 1613 行定义.
被这些函数引用 moodycamel::ConcurrentQueue< T, Traits >::add_blocks_to_free_list(), moodycamel::ConcurrentQueue< T, Traits >::ExplicitProducer::enqueue(), moodycamel::ConcurrentQueue< T, Traits >::ExplicitProducer::enqueue_bulk(), moodycamel::ConcurrentQueue< T, Traits >::ImplicitProducer::enqueue_bulk() , 以及 moodycamel::ConcurrentQueue< T, Traits >::ExplicitProducer::~ExplicitProducer().
std::atomic<bool> moodycamel::ConcurrentQueue< T, Traits >::Block::shouldBeOnFreeList |
在文件 ConcurrentQueue.h 第 1619 行定义.