#include <BlockingQueue.h>
Public Member Functions | |
bool | pop (T &result, Duration timeout=TIME_INFINITE) |
Pop from the queue, block up to timeout if empty. | |
T | pop () |
void | push (const T &t) |
Push a value onto the queue. | |
void | close (const ExceptionHolder &ex=ExceptionHolder(new ClosedException())) |
Close the queue. | |
void | open () |
Open a closed queue. | |
bool | isClosed () const |
bool | empty () const |
size_t | size () const |
Definition at line 36 of file BlockingQueue.h.
bool qpid::sys::BlockingQueue< T >::pop | ( | T & | result, | |
Duration | timeout = TIME_INFINITE | |||
) | [inline] |
Pop from the queue, block up to timeout if empty.
result | Set to value popped from queue. | |
timeout | Defaults to infinite. |
Definition at line 50 of file BlockingQueue.h.
References qpid::sys::Condition::notify(), qpid::sys::BlockingQueue< T >::pop(), and qpid::sys::Waitable::wait().
Referenced by qpid::sys::BlockingQueue< T >::pop().
void qpid::sys::BlockingQueue< T >::close | ( | const ExceptionHolder & | ex = ExceptionHolder(new ClosedException()) |
) | [inline] |
Close the queue.
exception to throw to waiting threads. ClosedException by default.
Definition at line 87 of file BlockingQueue.h.
References qpid::sys::Waitable::hasException(), qpid::sys::Condition::notifyAll(), qpid::sys::Waitable::setException(), and qpid::sys::Waitable::waitWaiters().
void qpid::sys::BlockingQueue< T >::open | ( | ) | [inline] |
Open a closed queue.
Definition at line 98 of file BlockingQueue.h.
References qpid::sys::Waitable::resetException().