Spec Concurrent Suspendable Queue
Thread-safe suspendable queue for multiple producers and multiple consumers.

Extends ConcurrentQueue
All Extended ConcurrentQueue
Defined in <seqan/parallel.h>
Signature template <typename TValue, typename TSpec> class ConcurrentQueue<TValue, Suspendable<TSpec> >;

Template Parameters

TValue Element type of the queue.
TSpec Tag for further specializing the Concurrent Queue. Default is void.

Interface Function Overview

Interface Functions Inherited From ConcurrentQueue

Detailed Description

In contrast to the standard @Class.ConcurrentQueue@ this queue suspends the caller if it pops a value when the queue was empty or appends a value to a full fixed-size queue.

The implementation uses Mutexes and Events to optionally suspend the calling thread and uses a @Class.AllocString@ as ring buffer.