RxCpp
The Reactive Extensions for Native (RxCpp) is a library for composing asynchronous and event-based programs using observable sequences and LINQ-style query operators in both C and C++.
|
#include <rx-scheduler.hpp>
Public Types | |
typedef scheduler_base::clock_type | clock_type |
typedef composite_subscription::weak_subscription | weak_subscription |
Public Types inherited from rxcpp::schedulers::worker_base | |
typedef tag_worker | worker_tag |
Public Types inherited from rxcpp::subscription_base | |
typedef tag_subscription | subscription_tag |
Public Member Functions | |
worker () | |
worker (composite_subscription cs, detail::const_worker_interface_ptr i) | |
worker (composite_subscription cs, worker o) | |
const composite_subscription & | get_subscription () const |
composite_subscription & | get_subscription () |
bool | is_subscribed () const |
weak_subscription | add (subscription s) const |
void | remove (weak_subscription w) const |
void | clear () const |
void | unsubscribe () const |
clock_type::time_point | now () const |
return the current time for this worker More... | |
void | schedule (const schedulable &scbl) const |
insert the supplied schedulable to be run as soon as possible More... | |
void | schedule (clock_type::time_point when, const schedulable &scbl) const |
insert the supplied schedulable to be run at the time specified More... | |
void | schedule (clock_type::duration when, const schedulable &scbl) const |
insert the supplied schedulable to be run at now() + the delay specified More... | |
void | schedule_periodically (clock_type::time_point initial, clock_type::duration period, const schedulable &scbl) const |
void | schedule_periodically (clock_type::duration initial, clock_type::duration period, const schedulable &scbl) const |
template<class Arg0 , class... ArgN> | |
auto | schedule (Arg0 &&a0, ArgN &&...an) const -> typename std::enable_if< (detail::is_action_function< Arg0 >::value|| is_subscription< Arg0 >::value)&& !is_schedulable< Arg0 >::value >::type |
use the supplied arguments to make a schedulable and then insert it to be run More... | |
template<class... ArgN> | |
void | schedule_rebind (const schedulable &scbl, ArgN &&...an) const |
use the supplied arguments to make a schedulable and then insert it to be run More... | |
template<class Arg0 , class... ArgN> | |
auto | schedule (clock_type::time_point when, Arg0 &&a0, ArgN &&...an) const -> typename std::enable_if< (detail::is_action_function< Arg0 >::value|| is_subscription< Arg0 >::value)&& !is_schedulable< Arg0 >::value >::type |
use the supplied arguments to make a schedulable and then insert it to be run More... | |
template<class... ArgN> | |
void | schedule_rebind (clock_type::time_point when, const schedulable &scbl, ArgN &&...an) const |
use the supplied arguments to make a schedulable and then insert it to be run More... | |
template<class Arg0 , class... ArgN> | |
auto | schedule_periodically (clock_type::time_point initial, clock_type::duration period, Arg0 &&a0, ArgN &&...an) const -> typename std::enable_if< (detail::is_action_function< Arg0 >::value|| is_subscription< Arg0 >::value)&& !is_schedulable< Arg0 >::value >::type |
use the supplied arguments to make a schedulable and then insert it to be run More... | |
template<class... ArgN> | |
void | schedule_periodically_rebind (clock_type::time_point initial, clock_type::duration period, const schedulable &scbl, ArgN &&...an) const |
use the supplied arguments to make a schedulable and then insert it to be run More... | |
Friends | |
class | weak_worker |
bool | operator== (const worker &, const worker &) |
a worker ensures that all scheduled actions on the same instance are executed in-order with no overlap a worker ensures that all scheduled actions are unsubscribed when it is unsubscribed some inner implementations will impose additional constraints on the execution of items.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
return the current time for this worker
|
inline |
|
inline |
insert the supplied schedulable to be run as soon as possible
|
inline |
insert the supplied schedulable to be run at the time specified
|
inline |
insert the supplied schedulable to be run at now() + the delay specified
auto rxcpp::schedulers::worker::schedule | ( | Arg0 && | a0, |
ArgN &&... | an | ||
) | const -> typename std::enable_if< (detail::is_action_function<Arg0>::value || is_subscription<Arg0>::value) && !is_schedulable<Arg0>::value>::type |
use the supplied arguments to make a schedulable and then insert it to be run
auto rxcpp::schedulers::worker::schedule | ( | clock_type::time_point | when, |
Arg0 && | a0, | ||
ArgN &&... | an | ||
) | const -> typename std::enable_if< (detail::is_action_function<Arg0>::value || is_subscription<Arg0>::value) && !is_schedulable<Arg0>::value>::type |
use the supplied arguments to make a schedulable and then insert it to be run
|
inline |
insert the supplied schedulable to be run at the initial time specified and then again at initial + (N * period) this will continue until the worker or schedulable is unsubscribed.
|
inline |
auto rxcpp::schedulers::worker::schedule_periodically | ( | clock_type::time_point | initial, |
clock_type::duration | period, | ||
Arg0 && | a0, | ||
ArgN &&... | an | ||
) | const -> typename std::enable_if< (detail::is_action_function<Arg0>::value || is_subscription<Arg0>::value) && !is_schedulable<Arg0>::value>::type |
use the supplied arguments to make a schedulable and then insert it to be run
void rxcpp::schedulers::worker::schedule_periodically_rebind | ( | clock_type::time_point | initial, |
clock_type::duration | period, | ||
const schedulable & | scbl, | ||
ArgN &&... | an | ||
) | const |
use the supplied arguments to make a schedulable and then insert it to be run
void rxcpp::schedulers::worker::schedule_rebind | ( | const schedulable & | scbl, |
ArgN &&... | an | ||
) | const |
use the supplied arguments to make a schedulable and then insert it to be run
void rxcpp::schedulers::worker::schedule_rebind | ( | clock_type::time_point | when, |
const schedulable & | scbl, | ||
ArgN &&... | an | ||
) | const |
use the supplied arguments to make a schedulable and then insert it to be run
|
inline |
|
friend |