BloombergLP::bslmt

Package namespace for multithreading components.

Types

NameDescription
Barrier This class defines a thread barrier.
ChronoUtil This struct provides a namespace for utility functions that operate on bsl::chrono facilities.
Condition This class implements a portable inter-thread signaling primitive.
ConditionImpl Platform-specific condition variable implementation.
Configuration Namespace for utilities that manage default bslmt configuration values.
EntryPointFunctorAdapter Adapter holding a copy of an invokable object and its allocator.
EntryPointFunctorAdapterUtil Utility functions for EntryPointFunctorAdapter.
EntryPointFunctorAdapter_Base This component-private type provides a non-templated view of EntryPointFunctorAdapter for accessing the invoker function. Do not use outside this component.
FastPostSemaphore This class implements a semaphore type, optimized for post, for thread synchronization.
FastPostSemaphoreImpl This class implements a semaphore type, optimized for post, for thread synchronization.
FastPostSemaphoreImplWorkaroundUtil This class provides utility functions for workarounds to system level issues for FastPostSemaphoreImpl.
Latch Provide a single-use thread synchronization mechanism on an event count.
LockGuard This class template implements a guard for acquisition and release of synchronization resources (i.e., locks).
LockGuardTryLock This class template implements a guard for tentative acquisition and release of synchronization resources (i.e., locks).
LockGuardUnlock This class template implements a guard for release and reacquisition of synchronization resources (i.e., locks).
LockReadGuard DEPRECATED: Use ReadLockGuard instead.
LockWriteGuard DEPRECATED: Use WriteLockGuard instead.
MeteredMutex Mutex that tracks cumulative hold time and wait time.
Mutex Portable wrapper of an OS-level mutex for intra-process synchronization.
MutexImpl Primary template for platform-specific mutex implementations.
Once Gate-keeper class for code that should only execute once per process.
OnceGuard Guard class for using Once safely.
Platform This struct provides a namespace for concurrency trait definitions.
QLock Small, statically-initializable mutex for serialized resource access.
QLockGuard Guard that acquires and releases a lock on a QLock object.
QLock_EventFlag [PRIVATE]Thread-safe flag for signaling an event between two threads.
RWMutex Platform-independent interface to a reader-writer mutex.
RWMutexImpl Platform-specific implementation of a readers-writer mutex.
ReadLockGuard This class template implements a guard for acquisition and release of read synchronization resources (i.e., reader locks).
ReadLockGuardTryLock This class template implements a guard for tentative acquisition and release of read synchronization resources (i.e., reader locks).
ReadLockGuardUnlock This class template implements a guard for release and reacquisition of read synchronization resources (i.e., reader locks).
ReaderWriterLock This class provides a multi-reader/single-writer lock mechanism.
ReaderWriterMutex This class provides a multi-reader/single-writer lock mechanism.
ReaderWriterMutexImpl This class provides a multi-reader/single-writer lock mechanism.
RecursiveMutex Recursive mutex that can be locked multiple times by the same thread.
RecursiveMutexImpl Platform-specific recursive mutex implementation (forward declaration).
RecursivemutexImpl Platform-specific recursive mutex implementation (forward declaration).
SaturatedTimeConversionImpUtil Utility for saturating conversions between time representations.
Semaphore This class implements a portable semaphore type for thread synchronization. It forwards all requests to an appropriate platform-specific implementation.
SemaphoreImpl
Sluice This class controls the release of threads from a common synchronization point.
TestUtil This struct provides a namespace for a suite of utility functions that facilitate the creation of BDE-style test drivers.
TestUtil_Guard This class defines an object that provides exclusive access to the critical sections defined by this component's macros.
ThreadAttributes This simply constrained (value-semantic) attribute class characterizes a collection of thread attribute values.
ThreadGroup Container for managing a group of joinable threads.
ThreadUtil This struct provides a suite of portable utility functions for managing threads.
ThreadUtilImpl Platform-specific implementation of ThreadUtil.
ThroughputBenchmark Mechanism for multi-threaded throughput performance testing.
ThroughputBenchmarkResult Repository for multi-threaded throughput benchmark results.
ThroughputBenchmarkResult_TestUtil Test utility for accessing private throughput result attributes.
ThroughputBenchmark_TestUtil This class implements a test utility that gives the test driver access to the unexposed data members of ThroughputBenchmark.
ThroughputBenchmark_WorkData Data transferred to ThroughputBenchmark_WorkFunction.
ThroughputBenchmark_WorkFunction This class is the work function functor, being called for each work thread.
TimedCompletionGuard This class implements a guard for work completion within a specified duration.
TimedSemaphore This class implements a portable timed semaphore type for thread synchronization. It forwards all requests to an appropriate platform-specific implementation.
TimedSemaphoreImpl Forward declaration of platform-specific timed semaphore implementation.
TryLockGuard DEPRECATED: Use LockGuardTryLock instead.
Turnstile Provide a mechanism to meter time at a configured event rate.
UnLockGuard This class is DEPRECATED. Use LockGuardUnlock instead.
WriteLockGuard This class template implements a guard for acquisition and release of write synchronization resources (i.e., writer locks).
WriteLockGuardTryLock This class template implements a guard for tentative acquisition and release of write synchronization resources (i.e., writer locks).
WriteLockGuardUnlock This class template implements a guard for release and reacquisition of write synchronization resources (i.e., writer locks).

Functions

NameDescription
operator<< Write the value of the specified object to the specified output stream in a single-line format.
operator== Return true if the specified lhs and rhs objects have the same value, and false otherwise.
operator!= Return true if the specified lhs and rhs objects do not have the same value, and false otherwise.