Namespace for concurrent container components.

Types

Name

Description

BoundedQueue

This class provides a thread‐safe bounded queue of values.

BoundedQueue_Node

This class implements the queue's node.

BoundedQueue_PopCompleteGuard

This class implements a guard that invokes TYPE::popComplete on a NODE upon destruction.

BoundedQueue_PushExceptionCompleteProctor

This class implements a proctor that invokes TYPE::pushExceptionComplete upon destruction unless release has been called.

Cache

This class represents a simple in‐process key‐value store supporting a variety of eviction policies.

CacheEvictionPolicy

Namespace for enumerating cache eviction policies.

Cache_QueueProctor

Proctor that restores a cache queue on destruction.

Cache_TestUtil

Test utility that exposes the cache RW‐mutex lock methods.

Deque

Thread‐safe, indexable, double‐ended queue of TYPE values.

FixedQueue

This class provides a thread‐aware, lock‐free, fixed‐size queue of values.

FixedQueueIndexManager

Thread‐enabled index manager for a fixed‐size circular buffer.

FixedQueue_PopGuard

This class provides a destruction guard that pops an element from a FixedQueue.

FixedQueue_PushProctor

This class provides a proctor that clears a FixedQueue on destruction unless released.

MultipriorityQueue

This class implements a thread‐enabled multipriority queue of TYPE.

MultipriorityQueue_Node

This class stores one item of TYPE as a node in a linked list.

ObjectCatalog

Thread‐safe indexed catalog of TYPE objects.

ObjectCatalogIter

Thread‐safe iterator over an ObjectCatalog of TYPE objects.

ObjectCatalog_AutoCleanup

Proctor that cleans up a managed ObjectCatalog node on destruction.

ObjectPool

Thread‐safe pool of reusable objects that implements bdlma::Factory.

ObjectPoolFunctors

Namespace for resetter functors and the default creator type for ObjectPool.

ObjectPool_CreatorConverter

Converter that adapts creator types for ObjectPool constructors.

ObjectPool_DefaultProxy

Proxy for a creator that default‐constructs objects of TYPE.

ObjectPool_GeneralProxy

This private class template provides a default constructor which simply invokes the default constructor of the parameterized TYPE.

ObjectPool_ProxyPicker

For a CREATOR type other than the specialization below, provide a metafunction that returns ObjectPool_GeneralProxy<CREATOR> as the creator proxy for all types.

Queue

This class provides a thread‐enabled, double‐ended queue of TYPE values.

SharedObjectPool

This class provides a thread‐safe pool of bsl::shared_ptr objects.

SharedObjectPool_Rep

Shared pointer representation object used by SharedObjectPool.

SingleConsumerQueue

This class provides a thread‐safe unbounded queue of values that assumes a single consumer thread.

SingleConsumerQueueImpl

This class provides a thread‐safe unbounded queue of values that assumes a single consumer thread.

SingleConsumerQueueImpl_AllocateLockGuard

This class implements a guard that automatically invokes releaseAllocateLock on the managed queue upon destruction.

SingleConsumerQueueImpl_MarkReclaimProctor

This class implements a proctor that, unless its release method has previously been invoked, automatically invokes markReclaim on a NODE upon destruction.

SingleConsumerQueueImpl_PopCompleteGuard

This class implements a guard that automatically invokes popComplete on the managed queue upon destruction.

SingleProducerQueue

This class provides a thread‐safe unbounded queue of values that assumes a single producer thread.

SingleProducerQueueImpl

This class provides a thread‐safe unbounded queue of values that assumes a single producer thread.

SingleProducerQueueImpl_PopCompleteGuard

This class implements a guard automatically invokes popComplete on a NODE upon destruction.

SingleProducerQueueImpl_ReleaseAllRawProctor

This class implements a proctor that, unless its release method has previously been invoked, automatically invokes releaseAllRaw on a TYPE upon destruction.

SingleProducerSingleConsumerBoundedQueue

This class provides a thread‐safe bounded queue of values that supports a single producer and a single consumer.

SingleProducerSingleConsumerBoundedQueue_PopCompleteGuard

This class implements a guard that invokes TYPE::popComplete on a NODE upon destruction.

SkipList

Thread‐safe ordered associative skip list of key/data pairs.

SkipListPair

Type‐safe pointer to a key/data pair in a SkipList.

SkipListPairHandle

Managed handle to a key/data pair in a SkipList.

SkipList_DoubleLockGuard

RAII guard that locks two mutexes in address order to avoid deadlock.

SkipList_Node

This component‐private structure is a node in the SkipList.

SkipList_NodeCreationHelper

This component‐private structure is a scoped guard that initializes new nodes and releases them in case of exception.

SkipList_PoolManager

Component‐private manager for the lock‐free pool of skip‐list nodes.

SkipList_PoolUtil

This component‐private utility handles the lock‐free pool of list nodes.

SkipList_RandomLevelGenerator

This component‐private class handles randomizing the levelization of list nodes.

StripedUnorderedContainerImpl

This class implements the logic for a striped hash multimap with logic that supports a (unique) map as a special case.

StripedUnorderedContainerImplMaxLoadFactorFlag

This struct is a constructor flag used to select the contructor that takes a maxLoadFactor value.

StripedUnorderedContainerImpl_ArrayOfLocksWriteGuard

This class holds locks on an array of locks, established in sequential order, and unlocks them upon destruction in the RAII pattern.

StripedUnorderedContainerImpl_Bucket

This class represents a bucket of the hash map. This class template represents the head of in the singly‐linked list of (KEY, VALUE) elements in a hash map.

StripedUnorderedContainerImpl_Constants

This class defines constant values used to represent the state of a StripedUnorderedContainerImpl object.

StripedUnorderedContainerImpl_LockElement

A mutex + support info; padded to cacheline size, one per stripe

StripedUnorderedContainerImpl_LockElementReadGuard

A guard pattern on StripedUnorderedContainerImpl_LockElement, to release on exception, for a lock element locked as read.

StripedUnorderedContainerImpl_LockElementWriteGuard

A guard pattern on StripedUnorderedContainerImpl_LockElement, to release on exception, for a lock element locked as write.

StripedUnorderedContainerImpl_Node

This class template represents a node in the singly‐linked list of (KEY, VALUE) elements for each bucket of a hash map.

StripedUnorderedContainerImpl_RehashBitSetGuard

This class defines a proctor type that attempts to set the rehash bit of a state object, and if successful, clears that bit upon destruction.

StripedUnorderedContainerImpl_SortItem

A vector element needed for efficient sorting for the insertBulk and eraseBulk methods.

StripedUnorderedContainerImpl_TestUtil

Test utility exposing stripe lock/unlock for the test driver.

StripedUnorderedMap

Fully thread‐safe hash map from KEY to VALUE, partitioned into stripes.

StripedUnorderedMultiMap

Fully thread‐safe striped hash multimap from KEY to VALUE.

TimeQueue

Priority queue of DATA items ordered by associated time values.

TimeQueueItem

Container for a time, data, handle, and key associated with a queue item.

Functions

Name

Description

operator<<

Write the value of list to the specified output stream.

operator==

Equality operators

operator!=

Inequality operators

operator<

Return true if lhs is ordered before rhs by stripe, then data.

Created with MrDocs