cds  2.3.2
cds::container::vyukov_queue::traits Struct Reference

VyukovMPMCCycleQueue default traits. More...

#include <cds/container/vyukov_mpmc_cycle_queue.h>

Inheritance diagram for cds::container::vyukov_queue::traits:
cds::intrusive::vyukov_queue::traits cds::memory::vyukov_queue_pool_traits

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...
 

Detailed Description

VyukovMPMCCycleQueue default traits.

Member Typedef Documentation

◆ memory_model

C++ memory ordering model.

Can be opt::v::relaxed_ordering (relaxed memory model, the default) or opt::v::sequential_consistent (sequentially consistent memory model).

◆ value_cleaner

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

Field Documentation

◆ single_consumer

constexpr bool const cds::container::vyukov_queue::traits::single_consumer = false
static

Single-consumer version.

For single-consumer version of algorithm some additional functions (front(), pop_front()) is available.

Default is false


The documentation for this struct was generated from the following file:

cds 2.3.2 Developed by Maxim Khizhinsky aka khizmax and other contributors 2007 - 2017
Autogenerated Sun Dec 31 2017 12:10:34 by Doxygen 1.8.13