KanoopCommonQt 2.1.1
Kanoop foundational Qt utility library
Loading...
Searching...
No Matches
LockingQueue< T > Class Template Reference

LockingQueue. More...

#include <lockingqueue.h>

+ Inheritance diagram for LockingQueue< T >:
+ Collaboration diagram for LockingQueue< T >:

Public Member Functions

dequeue (quint32 waitTimeMs, bool &success)
 Remove and return the front element, blocking until one is available or timeout elapses.
 
void enqueue (const T &t)
 Append an element to the back of the queue and wake one waiting consumer.
 

Detailed Description

template<class T>
class LockingQueue< T >

LockingQueue.

Thread-safe Multi-producer Multi-consumer blocking queue

Stephen Punak, July 08 2019

Thread-safe, blocking multi-producer multi-consumer queue.

Template Parameters
TElement type stored in the queue

Definition at line 21 of file lockingqueue.h.

Member Function Documentation

◆ dequeue()

template<class T >
T LockingQueue< T >::dequeue ( quint32  waitTimeMs,
bool &  success 
)
inline

Remove and return the front element, blocking until one is available or timeout elapses.

Parameters
waitTimeMsMaximum time to wait in milliseconds
successOutput set to true if an element was dequeued, false on timeout
Returns
Dequeued element, or a default-constructed T on timeout

Definition at line 30 of file lockingqueue.h.

◆ enqueue()

template<class T >
void LockingQueue< T >::enqueue ( const T &  t)
inline

Append an element to the back of the queue and wake one waiting consumer.

Parameters
tElement to enqueue

Definition at line 62 of file lockingqueue.h.


The documentation for this class was generated from the following file: