deleteQueue overloads

Synopses

Declared in <bdlmt_multiqueuethreadpool.h>

Disable enqueuing to the queue associated with the specified id, and when the currently executing job (or batch of jobs) of that queue, if any, is complete, then destroy the queue. Return 0 on success, and a non‐zero value otherwise. This function will fail if the pool is stopped. Any other (non‐executing) jobs on the queue are deleted asynchronously. The calling thread blocks until completion of the currently executing job (or batch of jobs), except when deleteQueue is called from a job in the queue being deleted. In that latter case, no block takes place, the queue is deleted (no longer observable from the MultiQueueThreadPool), and the job completes.

int
deleteQueue(int id);

Disable enqueuing to the queue associated with the specified id, and enqueue the specified cleanupFunctor to the front of the queue. The cleanupFunctor is guaranteed to be the last queue element processed, after which the queue is destroyed. This function does not wait for the cleanupFunctor to be executed (instead the caller is notified asynchronously through the execution of the supplied cleanupFunctor). Return 0 on success, and a non‐zero value otherwise. Note that this function will fail if this pool is stopped.

int
deleteQueue(
    int id,
    CleanupFunctor const& cleanupFunctor);

Created with MrDocs