BloombergLP::bdlmt::MultiQueueThreadPool_Queue

This private class provides a thread-safe, lightweight job queue.

Synopsis

Declared in <bdlmt_multiqueuethreadpool.h>

class MultiQueueThreadPool_Queue;

Type Aliases

NameDescription
Job Defines a type alias for the job functor type.

Member Functions

NameDescription
MultiQueueThreadPool_Queue [constructor]Create a queue bound to the specified multi-queue thread pool.
~MultiQueueThreadPool_Queue [destructor]Destroy this queue.
batchSize Return this queue's execution batch size.
disable Disable enqueuing to this queue.
drainWaitWhilePausing Block until all threads waiting for this queue to pause are released.
enable Enable enqueuing to this queue.
enqueueDeletion Disable this queue and schedule its deletion.
executeFront Execute and dequeue the job at the front of this queue.
initiatePause Begin pausing this queue without waiting for the current job.
isDrained Report whether all jobs in this queue are finished.
isEnabled Report whether enqueuing to this object is enabled. This object is constructed with enqueuing enabled.
isPaused Report whether this object is paused.
length Return an instantaneous snapshot of the length of this queue.
pushBack Enqueue functor at the back of this queue.
pushFront Add functor at the front of this queue.
reset Reset this queue to its initial state.
resume Allow jobs on this queue to begin executing.
setBatchSize Set this queue's job execution batch size.
waitWhilePausing Wait until the current job finishes and this queue is paused.
operator BloombergLP::bslmf::NestedTraitDeclaration<MultiQueueThreadPool_Queue, UsesBslmaAllocator> Declare that this type uses a bslma allocator.