#include <concurrentqueue.h>
|
| ConcurrentQueue (size_t capacity=6 *BLOCK_SIZE) |
|
| ConcurrentQueue (size_t minCapacity, size_t maxExplicitProducers, size_t maxImplicitProducers) |
|
| ~ConcurrentQueue () |
|
| ConcurrentQueue (ConcurrentQueue const &)=delete |
|
ConcurrentQueue & | operator= (ConcurrentQueue const &)=delete |
|
| ConcurrentQueue (ConcurrentQueue &&other) noexcept |
|
ConcurrentQueue & | operator= (ConcurrentQueue &&other) noexcept |
|
void | swap (ConcurrentQueue &other) noexcept |
|
bool | enqueue (T const &item) |
|
bool | enqueue (T &&item) |
|
bool | enqueue (producer_token_t const &token, T const &item) |
|
bool | enqueue (producer_token_t const &token, T &&item) |
|
template<typename It > |
bool | enqueue_bulk (It itemFirst, size_t count) |
|
template<typename It > |
bool | enqueue_bulk (producer_token_t const &token, It itemFirst, size_t count) |
|
bool | try_enqueue (T const &item) |
|
bool | try_enqueue (T &&item) |
|
bool | try_enqueue (producer_token_t const &token, T const &item) |
|
bool | try_enqueue (producer_token_t const &token, T &&item) |
|
template<typename It > |
bool | try_enqueue_bulk (It itemFirst, size_t count) |
|
template<typename It > |
bool | try_enqueue_bulk (producer_token_t const &token, It itemFirst, size_t count) |
|
template<typename U > |
bool | try_dequeue (U &item) |
|
template<typename U > |
bool | try_dequeue_non_interleaved (U &item) |
|
template<typename U > |
bool | try_dequeue (consumer_token_t &token, U &item) |
|
template<typename It > |
size_t | try_dequeue_bulk (It itemFirst, size_t max) |
|
template<typename It > |
size_t | try_dequeue_bulk (consumer_token_t &token, It itemFirst, size_t max) |
|
template<typename U > |
bool | try_dequeue_from_producer (producer_token_t const &producer, U &item) |
|
template<typename It > |
size_t | try_dequeue_bulk_from_producer (producer_token_t const &producer, It itemFirst, size_t max) |
|
size_t | size_approx () const |
|
◆ consumer_token_t
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ index_t
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ producer_token_t
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ size_t
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ AllocationMode
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
Enumerator |
---|
CanAlloc | |
CannotAlloc | |
◆ InnerQueueContext
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
Enumerator |
---|
implicit_context | |
explicit_context | |
◆ ConcurrentQueue() [1/4]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ ConcurrentQueue() [2/4]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ ~ConcurrentQueue()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ ConcurrentQueue() [3/4]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ ConcurrentQueue() [4/4]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ add_block_to_free_list()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ add_blocks_to_free_list()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ add_producer()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ aligned_free()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename TAlign >
◆ aligned_malloc()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename TAlign >
◆ create() [1/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename U >
◆ create() [2/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename U , typename A1 >
◆ create_array()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename U >
◆ destroy()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename U >
◆ destroy_array()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename U >
◆ enqueue() [1/4]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ enqueue() [2/4]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ enqueue() [3/4]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ enqueue() [4/4]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ enqueue_bulk() [1/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename It >
◆ enqueue_bulk() [2/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename It >
◆ get_or_add_implicit_producer()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ inner_enqueue() [1/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<AllocationMode canAlloc, typename U >
◆ inner_enqueue() [2/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<AllocationMode canAlloc, typename U >
◆ inner_enqueue_bulk() [1/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<AllocationMode canAlloc, typename It >
◆ inner_enqueue_bulk() [2/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<AllocationMode canAlloc, typename It >
◆ is_lock_free()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ operator=() [1/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ operator=() [2/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ populate_initial_block_list()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ populate_initial_implicit_producer_hash()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ recycle_or_create_producer() [1/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ recycle_or_create_producer() [2/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ reown_producers()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ requisition_block()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<AllocationMode canAlloc>
◆ size_approx()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ swap()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ swap_implicit_producer_hashes()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ swap_internal()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ try_dequeue() [1/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename U >
◆ try_dequeue() [2/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename U >
◆ try_dequeue_bulk() [1/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename It >
◆ try_dequeue_bulk() [2/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename It >
◆ try_dequeue_bulk_from_producer()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename It >
◆ try_dequeue_from_producer()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename U >
◆ try_dequeue_non_interleaved()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename U >
◆ try_enqueue() [1/4]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ try_enqueue() [2/4]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ try_enqueue() [3/4]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ try_enqueue() [4/4]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ try_enqueue_bulk() [1/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename It >
◆ try_enqueue_bulk() [2/2]
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename It >
◆ try_get_block_from_free_list()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ try_get_block_from_initial_pool()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ update_current_producer_after_rotation()
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ ConcurrentQueueTests
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
friend class ConcurrentQueueTests |
|
friend |
◆ ConsumerToken
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ ExplicitProducer
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ ImplicitProducer
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ moodycamel::swap
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
template<typename XT , typename XTraits >
◆ ProducerToken
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ BLOCK_SIZE
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ EXPLICIT_BLOCK_EMPTY_COUNTER_THRESHOLD
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ EXPLICIT_CONSUMER_CONSUMPTION_QUOTA_BEFORE_ROTATE
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
const std::uint32_t moodycamel::ConcurrentQueue< T, Traits >::EXPLICIT_CONSUMER_CONSUMPTION_QUOTA_BEFORE_ROTATE = static_cast<std::uint32_t>(Traits::EXPLICIT_CONSUMER_CONSUMPTION_QUOTA_BEFORE_ROTATE) |
|
static |
◆ EXPLICIT_INITIAL_INDEX_SIZE
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ freeList
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ globalExplicitConsumerOffset
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ IMPLICIT_INITIAL_INDEX_SIZE
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ implicitProducerHash
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ implicitProducerHashCount
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ implicitProducerHashResizeInProgress
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ INITIAL_IMPLICIT_PRODUCER_HASH_SIZE
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ initialBlockPool
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ initialBlockPoolIndex
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ initialBlockPoolSize
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ initialImplicitProducerHash
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ initialImplicitProducerHashEntries
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ MAX_SUBQUEUE_SIZE
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ nextExplicitConsumerId
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ producerCount
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
◆ producerListTail
template<typename T , typename Traits = ConcurrentQueueDefaultTraits>
The documentation for this class was generated from the following file: