moodycamel::Block 的协作图: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 |
| details::max_align_t | dummy |
| char | elements [sizeof(T) *BLOCK_SIZE] |
Private 属性 | |
| union { | |
| details::max_align_t dummy | |
| char elements [sizeof(T) *BLOCK_SIZE] | |
| }; | |
在文件 ConcurrentQueue.h 第 1598 行定义.
|
inline |
在文件 ConcurrentQueue.h 第 1600 行定义.
|
inline |
在文件 ConcurrentQueue.h 第 1609 行定义.
引用了 BLOCK_SIZE, emptyFlags, EXPLICIT_BLOCK_EMPTY_COUNTER_THRESHOLD , 以及 moodycamel::explicit_context.
|
inline |
在文件 ConcurrentQueue.h 第 1706 行定义.
引用了 BLOCK_SIZE , 以及 elements.
|
inline |
在文件 ConcurrentQueue.h 第 1705 行定义.
引用了 BLOCK_SIZE , 以及 elements.
|
inline |
在文件 ConcurrentQueue.h 第 1691 行定义.
引用了 BLOCK_SIZE, emptyFlags, EXPLICIT_BLOCK_EMPTY_COUNTER_THRESHOLD , 以及 moodycamel::explicit_context.
|
inline |
在文件 ConcurrentQueue.h 第 1676 行定义.
|
inline |
|
inline |
在文件 ConcurrentQueue.h 第 1655 行定义.
引用了 BLOCK_SIZE, EXPLICIT_BLOCK_EMPTY_COUNTER_THRESHOLD , 以及 moodycamel::explicit_context.
| union { ... } moodycamel::Block::@12 |
| details::max_align_t moodycamel::Block::dummy |
在文件 ConcurrentQueue.h 第 1718 行定义.
| bool moodycamel::Block::dynamicallyAllocated |
在文件 ConcurrentQueue.h 第 1728 行定义.
| char moodycamel::Block::elements[sizeof(T) *BLOCK_SIZE] |
在文件 ConcurrentQueue.h 第 1717 行定义.
被这些函数引用 operator[]().
| std::atomic<size_t> moodycamel::Block::elementsCompletelyDequeued |
在文件 ConcurrentQueue.h 第 1722 行定义.
被这些函数引用 set_empty() , 以及 try_enqueue_bulk().
| std::atomic<bool> moodycamel::Block::emptyFlags[BLOCK_SIZE<=EXPLICIT_BLOCK_EMPTY_COUNTER_THRESHOLD ? BLOCK_SIZE :1] |
在文件 ConcurrentQueue.h 第 1723 行定义.
被这些函数引用 is_empty(), reset_empty(), set_empty() , 以及 try_enqueue().
| std::atomic<Block*> moodycamel::Block::freeListNext |
在文件 ConcurrentQueue.h 第 1726 行定义.
| std::atomic<std::uint32_t> moodycamel::Block::freeListRefs |
在文件 ConcurrentQueue.h 第 1725 行定义.
| Block* moodycamel::Block::next |
| std::atomic<bool> moodycamel::Block::shouldBeOnFreeList |
在文件 ConcurrentQueue.h 第 1727 行定义.