cds
2.3.2
|
VyukovMPMCCycleQueue default traits. More...
#include <cds/container/vyukov_mpmc_cycle_queue.h>
Public Types | |
enum | { padding = opt::cache_line_padding } |
Padding for internal critical atomic data. Default is opt::cache_line_padding . | |
typedef cds::opt::v::uninitialized_dynamic_buffer< void *> | buffer |
Buffer type for internal array. | |
typedef cds::opt::v::auto_cleaner | value_cleaner |
A functor to clean item dequeued. More... | |
typedef cds::atomicity::empty_item_counter | item_counter |
Item counting feature; by default, disabled. Use cds::atomicity::item_counter to enable item counting. | |
typedef opt::v::relaxed_ordering | memory_model |
C++ memory ordering model. More... | |
typedef cds::backoff::Default | back_off |
Back-off strategy. | |
Static Public Attributes | |
static constexpr bool const | single_consumer = false |
Single-consumer version. More... | |
VyukovMPMCCycleQueue default traits.
C++ memory ordering model.
Can be opt::v::relaxed_ordering
(relaxed memory model, the default) or opt::v::sequential_consistent
(sequentially consistent memory model).
A functor to clean item dequeued.
The functor calls the destructor for queue item. After an item is dequeued, value_cleaner
cleans the cell that the item has been occupied. If T
is a complex type, value_cleaner
may be useful feature.
Default value is opt::v::auto_cleaner
|
static |
Single-consumer version.
For single-consumer version of algorithm some additional functions (front()
, pop_front()
) is available.
Default is false