cds
2.3.2
|
#include <cds/container/details/lazy_list_base.h>
Public Types | |
typedef implementation_defined | type |
Metafunction result. | |
};
/ Metafunction converting option list to lazy_list::traits
/** Options
are:
opt::lock_type
- lock type for node-level locking. Default is
cds::sync::spin. Note that each node of the list has member of type lock_type
, therefore, heavy-weighted locking primitive is not acceptable as candidate for lock_type
.opt::compare
- key compare functor. No default functor is provided. If the option is not specified, the opt::less
is used.opt::less
- specifies binary predicate used for key compare. Default is std::less<T>
.opt::equal_to
- specifies binary functor for comparing keys for equality. This option is applicable only for unordered list. No default is provided. If equal_to
is not specified, compare
is used, if compare
is not specified, less
is used.opt::sort
- specifies ordering policy. Default value is true
, i.e. the list is ordered. Note: unordering feature is not fully supported yet.opt::back_off
- back-off strategy used. If the option is not specified, cds::backoff::Default
is used.opt::item_counter
- the type of item counting feature. Default is disabled (atomicity::empty_item_counter
). To enable item counting use atomicity::item_counter
or atomicity::cache_friendly_item_counter
opt::stat
- internal statistics. By default, it is disabled (lazy_list::empty_stat
). To enable it use lazy_list::stat
opt::allocator
- the allocator used for creating and freeing list's item. Default is CDS_DEFAULT_ALLOCATOR macro.opt::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).