C++ Actor Framework 1.0.0
|
Blocking interface for emitting items to an asynchronous consumer. More...
#include <blocking_consumer.hpp>
Public Types | |
using | impl_ptr = intrusive_ptr<impl> |
Public Member Functions | |
blocking_consumer (const blocking_consumer &)=delete | |
blocking_consumer & | operator= (const blocking_consumer &)=delete |
blocking_consumer (blocking_consumer &&)=default | |
blocking_consumer & | operator= (blocking_consumer &&)=default |
blocking_consumer (impl_ptr ptr) | |
blocking_consumer (spsc_buffer_ptr< T > buf) | |
template<class ErrorPolicy > | |
read_result | pull (ErrorPolicy policy, T &item) |
Fetches the next item. | |
template<class ErrorPolicy , class Clock , class Duration = typename Clock::duration> | |
read_result | pull (ErrorPolicy policy, T &item, std::chrono::time_point< Clock, Duration > timeout) |
Fetches the next item. | |
template<class ErrorPolicy , class Rep , class Period > | |
read_result | pull (ErrorPolicy policy, T &item, std::chrono::duration< Rep, Period > timeout) |
Fetches the next item. | |
error | abort_reason () const |
Blocking interface for emitting items to an asynchronous consumer.
read_result caf::async::blocking_consumer< T >::pull | ( | ErrorPolicy | policy, |
T & | item ) |
Fetches the next item.
If there is no item available, this functions blocks unconditionally.
policy | Either instant_error, delay_error or ignore_errors. |
item | Output parameter for storing the received item. |
item
only when also returning read_result::ok
. read_result caf::async::blocking_consumer< T >::pull | ( | ErrorPolicy | policy, |
T & | item, | ||
std::chrono::duration< Rep, Period > | timeout ) |
Fetches the next item.
If there is no item available, this functions blocks until the relative timeout was reached.
policy | Either instant_error, delay_error or ignore_errors. |
item | Output parameter for storing the received item. |
timeout | Maximum duration before returning from the function. |
item
only when also returning read_result::ok
. read_result caf::async::blocking_consumer< T >::pull | ( | ErrorPolicy | policy, |
T & | item, | ||
std::chrono::time_point< Clock, Duration > | timeout ) |
Fetches the next item.
If there is no item available, this functions blocks until the absolute timeout was reached.
policy | Either instant_error, delay_error or ignore_errors. |
item | Output parameter for storing the received item. |
timeout | Absolute timeout for the receive operation. |
item
only when also returning read_result::ok
.