xenium
Namespace List
Here is a list of all documented namespaces with brief descriptions:
[detail level 1234]
 Nxenium
 Npolicy
 CbucketsPolicy to configure the number of buckets in harris_michael_hash_map
 Cmap_to_bucketPolicy to configure the function that maps the hash value to a bucket in harris_michael_hash_map
 Cmemoize_hashPolicy to configure whether the hash value should be stored and used during lookup operations in harris_michael_hash_map
 CreclaimerPolicy to configure the reclamation scheme to be used
 CbackoffPolicy to configure the backoff strategy
 CcomparePolicy to configure the comparison function
 CcapacityPolicy to configure the capacity of various containers
 CcontainerPolicy to configure the internal container type of some data structures
 ChashPolicy to configure the hash function
 Callocation_strategyPolicy to configure the allocation strategy
 Centries_per_nodePolicy to configure the number of entries per allocated node in ramalhete_queue
 Cpadding_bytesPolicy to configure the number of padding bytes to add to each entry in kirsch_kfifo_queue and kirsch_bounded_kfifo_queue to reduce false sharing
 Cpop_retriesPolicy to configure the number of iterations to spin on a queue entry while waiting for a pending push operation to finish
 Cscan_frequencyPolicy to configure the scan frequency for generic_epoch_based reclamation
 CscanPolicy to configure the scan strategy for generic_epoch_based reclamation
 CabandonPolicy to configure the abandon strategy for generic_epoch_based reclamation
 Cregion_extensionPolicy to configure the extension of critical regions in generic_epoch_based reclamation
 Cinsert_paddingPolicy to configure whether to insert padding after the internal header for lock_free_ref_count reclamation
 Cthread_local_free_list_sizePolicy to configure the size of thread-local free-lists for lock reclamation
 CslotsPolicy to configure the number of slots used in seqlock
 Cdefault_to_weakPolicy to configure whether try_push/try_pop in vyukov_bounded_queue should default to try_push_weak/try_pop_weak
 Cvalue_reclaimerPolicy to configure the reclaimer used for internally alloced nodes in vyukov_hash_map
 Nreclamation
 NabandonThis namespace contains various abandonment strategies to be used in the generic_epoch_based reclamation scheme
 Cwhen_exceeds_thresholdAbandon the retired nodes upon leaving the critical region when the number of nodes exceeds the specified threshold
 CneverNever abandon any nodes (except when the thread terminates)
 CalwaysAlways abandon the remaining retired nodes when the thread leaves its critical region
 Ndetail
 Cconcurrent_ptrT must be derived from enable_concurrent_ptr<T>. D is a deleter
 Nhe_allocation
 Cstatic_strategyHazard era allocation strategy for a static number of hazard eras per thread
 Cdynamic_strategyHazard era allocation strategy for a dynamic number of hazard eras per thread
 Nhp_allocation
 Cstatic_strategyHazard pointer allocation strategy for a static number of hazard pointers per thread
 Cdynamic_strategyHazard pointer allocation strategy for a dynamic number of hazard pointers per thread
 NscanThis namespace contains various scan strategies to be used in the generic_epoch_based reclamation scheme
 Cn_threadsScan N threads
 Call_threadsScan all threads (default behaviour in EBR/NEBR)
 Cone_threadScan a single thread (default behaviour in DEBRA)
 Cgeneric_epoch_basedA generalized implementation of epoch based reclamation
 Cbad_hazard_era_allocThis exception is thrown if a thread tries to allocate a new hazard era, but the number of available hazard eras is exhausted. This can only happen when xenium::reclamation::he_allocation::static_strategy is used
 Chazard_erasAn implementation of the hazard eras scheme proposed by Ramalhete and Correia [RC17]
 Cbad_hazard_pointer_allocThis exception is thrown if a thread tries to allocate a new hazard pointer, but the number of available hazard pointers is exhausted. This can only happen when xenium::reclamation::hp_allocation::static_strategy is used
 Chazard_pointerAn implementation of the hazard pointers reclamation scheme as proposed by Michael [Mic04]
 Clock_free_ref_countAn implementation of the lock-free reference counting (LFRC) schemea as proposed by Valois [Val95, MS95]
 Cquiescent_state_basedQuiescent state based reclamation
 Cstamp_itStamp-it
 Caligned_objectA small helper class for correctly aligned dynamic allocations of over-aligned types
 Cno_backoffDummy backoff strategy that does nothing
 Csingle_backoffSimple backoff strategy that always perfoms a single hardware_pause operation
 Cchase_work_stealing_dequeA lock-free work stealing deque
 Charris_michael_hash_mapA generic lock-free hash-map
 CaccessorAn accessor to safely access the value of an element
 CiteratorA ForwardIterator to safely iterate the hash-map
 Charris_michael_list_based_setA lock-free container that contains a sorted set of unique objects of type Key
 CiteratorA ForwardIterator to safely iterate the list
 ChashSlim wrapper around std::hash with specialization for pointer types
 Chash< Key * >Specialized hash functor for pointer types to get rid of the alignment
 Ckirsch_bounded_kfifo_queueA bounded lock-free multi-producer/multi-consumer k-FIFO queue
 Ckirsch_kfifo_queueAn unbounded lock-free multi-producer/multi-consumer k-FIFO queue
 Cleft_rightGeneric implementation of the LeftRight algorithm proposed by Ramalhete and Correia [RC15]
 Cmarked_ptrA pointer with an embedded mark/tag value
 Cmichael_scott_queueAn unbounded generic lock-free multi-producer/multi-consumer FIFO queue
 Cramalhete_queueA fast unbounded lock-free multi-producer/multi-consumer FIFO queue
 CseqlockAn implementation of the sequence lock (also often referred to as "sequential lock")
 Cvyukov_bounded_queueA bounded generic multi-producer/multi-consumer FIFO queue
 Cmanaged_ptrA helper struct to define that the lifetime of value objects of type T has to be managed by the specified reclaimer. (only supported by vyukov_hash_map)
 Cvyukov_hash_mapA concurrent hash-map that uses fine-grained locking
 CiteratorA ForwardIterator to safely iterate vyukov_hash_map