Your opinion will help to improve our service
Leave a feedback >Queue with single and multi producer/consumer options.
Definition in file queue.hpp.
Go to the source code of this file.
#include <atomic>
#include <limits>
#include <memory>
#include <moodycamel/concurrentqueue.h>
#include <userver/concurrent/impl/semaphore_capacity_control.hpp>
#include <userver/concurrent/queue_helpers.hpp>
#include <userver/engine/deadline.hpp>
#include <userver/engine/semaphore.hpp>
#include <userver/engine/single_consumer_event.hpp>
#include <userver/engine/task/cancel.hpp>
#include <userver/utils/assert.hpp>
#include <userver/utils/atomic.hpp>
Classes | |
struct | concurrent::DefaultQueuePolicy |
The default queue policy for GenericQueue. Custom queue policies must inherit from it. More... | |
class | concurrent::GenericQueue< T, QueuePolicy > |
Queue with single and multi producer/consumer options. More... | |
class | concurrent::GenericQueue< T, QueuePolicy >::SingleProducerSide |
class | concurrent::GenericQueue< T, QueuePolicy >::MultiProducerSide |
class | concurrent::GenericQueue< T, QueuePolicy >::NoMaxSizeProducerSide |
class | concurrent::GenericQueue< T, QueuePolicy >::SingleConsumerSide |
class | concurrent::GenericQueue< T, QueuePolicy >::MultiConsumerSide |
Namespaces | |
namespace | concurrent |
Locking stuff. | |
Typedefs | |
template<typename T > | |
using | concurrent::NonFifoMpmcQueue = GenericQueue< T, impl::SimpleQueuePolicy< true, true > > |
Non FIFO multiple producers multiple consumers queue. | |
template<typename T > | |
using | concurrent::NonFifoMpscQueue = GenericQueue< T, impl::SimpleQueuePolicy< true, false > > |
Non FIFO multiple producers single consumer queue. | |
template<typename T > | |
using | concurrent::SpmcQueue = GenericQueue< T, impl::SimpleQueuePolicy< false, true > > |
Single producer multiple consumers queue. | |
template<typename T > | |
using | concurrent::SpscQueue = GenericQueue< T, impl::SimpleQueuePolicy< false, false > > |
Single producer single consumer queue. | |
template<typename T > | |
using | concurrent::UnboundedNonFifoMpscQueue = GenericQueue< T, impl::NoMaxSizeQueuePolicy< true, false > > |
Like. | |
template<typename T > | |
using | concurrent::UnboundedSpmcQueue = GenericQueue< T, impl::NoMaxSizeQueuePolicy< false, true > > |
Like. | |
template<typename T > | |
using | concurrent::UnboundedSpscQueue = GenericQueue< T, impl::NoMaxSizeQueuePolicy< false, false > > |
Like. | |
using | concurrent::StringStreamQueue = GenericQueue< std::string, impl::ContainerQueuePolicy< false, false > > |
Single producer single consumer queue of std::string which is bounded by the total bytes inside the strings. | |
Enumerations | |
enum class | concurrent::QueueMaxSizeMode { concurrent::kNone , concurrent::kDynamicSync } |
Represents the manner in which the queue enforces the configured max size limit. More... | |