#include <ConcurrentQueue.h>
Public 类型 | |
typedef ::moodycamel::ConsumerToken | consumer_token_t |
typedef Traits::index_t | index_t |
typedef ::moodycamel::ProducerToken | producer_token_t |
typedef Traits::size_t | size_t |
Public 成员函数 | |
ConcurrentQueue (ConcurrentQueue &&other) MOODYCAMEL_NOEXCEPT | |
ConcurrentQueue (ConcurrentQueue const &) MOODYCAMEL_DELETE_FUNCTION | |
ConcurrentQueue (size_t capacity=6 *BLOCK_SIZE) | |
ConcurrentQueue (size_t minCapacity, size_t maxExplicitProducers, size_t maxImplicitProducers) | |
bool | enqueue (producer_token_t const &token, T &&item) |
bool | enqueue (producer_token_t const &token, T const &item) |
bool | enqueue (T &&item) |
bool | enqueue (T const &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) |
ConcurrentQueue & | operator= (ConcurrentQueue &&other) MOODYCAMEL_NOEXCEPT |
ConcurrentQueue & | operator= (ConcurrentQueue const &) MOODYCAMEL_DELETE_FUNCTION |
void | swap (ConcurrentQueue &other) MOODYCAMEL_NOEXCEPT |
template<typename U > | |
bool | try_dequeue (consumer_token_t &token, U &item) |
template<typename U > | |
bool | try_dequeue (U &item) |
template<typename It > | |
size_t | try_dequeue_bulk (consumer_token_t &token, It itemFirst, size_t max) |
template<typename It > | |
size_t | try_dequeue_bulk (It itemFirst, size_t max) |
template<typename U > | |
bool | try_dequeue_from_producer (producer_token_t const &producer, U &item) |
template<typename U > | |
bool | try_dequeue_non_interleaved (U &item) |
bool | try_enqueue (producer_token_t const &token, T &&item) |
bool | try_enqueue (producer_token_t const &token, T const &item) |
bool | try_enqueue (T &&item) |
bool | try_enqueue (T const &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) |
~ConcurrentQueue () | |
静态 Public 属性 | |
static const size_t | BLOCK_SIZE = static_cast<size_t>(Traits::BLOCK_SIZE) |
static const size_t | EXPLICIT_BLOCK_EMPTY_COUNTER_THRESHOLD = static_cast<size_t>(Traits::EXPLICIT_BLOCK_EMPTY_COUNTER_THRESHOLD) |
static const std::uint32_t | EXPLICIT_CONSUMER_CONSUMPTION_QUOTA_BEFORE_ROTATE = static_cast<std::uint32_t>(Traits::EXPLICIT_CONSUMER_CONSUMPTION_QUOTA_BEFORE_ROTATE) |
static const size_t | EXPLICIT_INITIAL_INDEX_SIZE = static_cast<size_t>(Traits::EXPLICIT_INITIAL_INDEX_SIZE) |
static const size_t | IMPLICIT_INITIAL_INDEX_SIZE = static_cast<size_t>(Traits::IMPLICIT_INITIAL_INDEX_SIZE) |
static const size_t | INITIAL_IMPLICIT_PRODUCER_HASH_SIZE = static_cast<size_t>(Traits::INITIAL_IMPLICIT_PRODUCER_HASH_SIZE) |
static const size_t | MAX_SUBQUEUE_SIZE = (details::const_numeric_max<size_t>::value - static_cast<size_t>(Traits::MAX_SUBQUEUE_SIZE) < BLOCK_SIZE) ? details::const_numeric_max<size_t>::value : ((static_cast<size_t>(Traits::MAX_SUBQUEUE_SIZE) + (BLOCK_SIZE - 1)) / BLOCK_SIZE * BLOCK_SIZE) |
Private 成员函数 | |
ConcurrentQueue & | swap_internal (ConcurrentQueue &other) |
在文件 ConcurrentQueue.h 第 749 行定义.
typedef ::moodycamel::ConsumerToken moodycamel::ConcurrentQueue< T, Traits >::consumer_token_t |
在文件 ConcurrentQueue.h 第 755 行定义.
typedef Traits::index_t moodycamel::ConcurrentQueue< T, Traits >::index_t |
在文件 ConcurrentQueue.h 第 757 行定义.
typedef ::moodycamel::ProducerToken moodycamel::ConcurrentQueue< T, Traits >::producer_token_t |
在文件 ConcurrentQueue.h 第 753 行定义.
typedef Traits::size_t moodycamel::ConcurrentQueue< T, Traits >::size_t |
在文件 ConcurrentQueue.h 第 759 行定义.
|
inlineexplicit |
|
inline |
|
inline |
在文件 ConcurrentQueue.h 第 870 行定义.
引用了 moodycamel::destroy(), moodycamel::destroy_array(), moodycamel::freeList, moodycamel::implicitProducerHash, moodycamel::ConcurrentQueue< T, Traits >::INITIAL_IMPLICIT_PRODUCER_HASH_SIZE, moodycamel::initialBlockPool, moodycamel::initialBlockPoolSize , 以及 moodycamel::producerListTail.
moodycamel::ConcurrentQueue< T, Traits >::ConcurrentQueue | ( | ConcurrentQueue< T, Traits > const & | ) |
|
inline |
|
inline |
在文件 ConcurrentQueue.h 第 1036 行定义.
|
inline |
在文件 ConcurrentQueue.h 第 1027 行定义.
|
inline |
|
inline |
|
inline |
|
inline |
在文件 ConcurrentQueue.h 第 1060 行定义.
|
inline |
在文件 ConcurrentQueue.h 第 955 行定义.
引用了 moodycamel::ConcurrentQueue< T, Traits >::swap_internal().
ConcurrentQueue & moodycamel::ConcurrentQueue< T, Traits >::operator= | ( | ConcurrentQueue< T, Traits > const & | ) |
|
inline |
在文件 ConcurrentQueue.h 第 965 行定义.
引用了 moodycamel::ConcurrentQueue< T, Traits >::swap_internal().
被这些函数引用 swap().
|
inlineprivate |
在文件 ConcurrentQueue.h 第 971 行定义.
引用了 moodycamel::freeList, moodycamel::globalExplicitConsumerOffset, moodycamel::initialBlockPool, moodycamel::initialBlockPoolIndex, moodycamel::initialBlockPoolSize, moodycamel::nextExplicitConsumerId, moodycamel::producerCount, moodycamel::producerListTail, moodycamel::reown_producers(), moodycamel::swap_implicit_producer_hashes() , 以及 moodycamel::details::swap_relaxed().
被这些函数引用 moodycamel::ConcurrentQueue< T, Traits >::operator=() , 以及 moodycamel::ConcurrentQueue< T, Traits >::swap().
|
inline |
在文件 ConcurrentQueue.h 第 1189 行定义.
引用了 moodycamel::ConsumerToken::currentProducer, moodycamel::ProducerBase::dequeue(), moodycamel::ConsumerToken::desiredProducer, moodycamel::ConcurrentQueue< T, Traits >::EXPLICIT_CONSUMER_CONSUMPTION_QUOTA_BEFORE_ROTATE, moodycamel::globalExplicitConsumerOffset, moodycamel::ConsumerToken::itemsConsumedFromCurrent, moodycamel::ConsumerToken::lastKnownGlobalOffset, moodycamel::producerListTail , 以及 moodycamel::update_current_producer_after_rotation().
|
inline |
|
inline |
在文件 ConcurrentQueue.h 第 1253 行定义.
引用了 moodycamel::ConsumerToken::currentProducer, moodycamel::ProducerBase::dequeue_bulk(), moodycamel::ConsumerToken::desiredProducer, moodycamel::ConcurrentQueue< T, Traits >::EXPLICIT_CONSUMER_CONSUMPTION_QUOTA_BEFORE_ROTATE, moodycamel::globalExplicitConsumerOffset, moodycamel::ConsumerToken::itemsConsumedFromCurrent, moodycamel::ConsumerToken::lastKnownGlobalOffset, moodycamel::producerListTail , 以及 moodycamel::update_current_producer_after_rotation().
|
inline |
在文件 ConcurrentQueue.h 第 1235 行定义.
|
inline |
在文件 ConcurrentQueue.h 第 1323 行定义.
|
inline |
在文件 ConcurrentQueue.h 第 1174 行定义.
|
inline |
在文件 ConcurrentQueue.h 第 1098 行定义.
|
inline |
在文件 ConcurrentQueue.h 第 1090 行定义.
|
inline |
|
inline |
|
inline |
|
inline |
在文件 ConcurrentQueue.h 第 1123 行定义.
|
static |
|
static |
在文件 ConcurrentQueue.h 第 764 行定义.
|
static |
|
static |
在文件 ConcurrentQueue.h 第 766 行定义.
|
static |
在文件 ConcurrentQueue.h 第 768 行定义.
|
static |
在文件 ConcurrentQueue.h 第 770 行定义.
被这些函数引用 moodycamel::ConcurrentQueue< T, Traits >::enqueue(), moodycamel::ConcurrentQueue< T, Traits >::enqueue(), moodycamel::ConcurrentQueue< T, Traits >::enqueue_bulk(), moodycamel::ConcurrentQueue< T, Traits >::try_enqueue(), moodycamel::ConcurrentQueue< T, Traits >::try_enqueue(), moodycamel::ConcurrentQueue< T, Traits >::try_enqueue_bulk() , 以及 moodycamel::ConcurrentQueue< T, Traits >::~ConcurrentQueue().
|
static |
在文件 ConcurrentQueue.h 第 779 行定义.