C++ Actor Framework  0.18
Public Types | Public Member Functions | List of all members
caf::actor_clock Class Referenceabstract

A monotonic clock for scheduling timeouts and delayed messages. More...

#include <actor_clock.hpp>

Inherited by caf::detail::simple_actor_clock.

Collaboration diagram for caf::actor_clock:
Collaboration graph

Public Types

using clock_type = std::chrono::steady_clock
 Underlying clock type.
 
using time_point = typename clock_type::time_point
 Discrete point in time.
 
using duration_type = typename clock_type::duration
 Time interval.
 

Public Member Functions

virtual time_point now () const noexcept
 Returns the current wall-clock time.
 
virtual void set_ordinary_timeout (time_point t, abstract_actor *self, std::string type, uint64_t id)=0
 Schedules a timeout_msg for self at time point t, overriding any previous receive timeout. More...
 
virtual void set_multi_timeout (time_point t, abstract_actor *self, std::string type, uint64_t id)=0
 Schedules a timeout_msg for self at time point t.
 
virtual void set_request_timeout (time_point t, abstract_actor *self, message_id id)=0
 Schedules a sec::request_timeout for self at time point t.
 
virtual void cancel_ordinary_timeout (abstract_actor *self, std::string type)=0
 Cancels a pending receive timeout.
 
virtual void cancel_request_timeout (abstract_actor *self, message_id id)=0
 Cancels the pending request timeout for id.
 
virtual void cancel_timeouts (abstract_actor *self)=0
 Cancels all timeouts for self.
 
virtual void schedule_message (time_point t, strong_actor_ptr receiver, mailbox_element_ptr content)=0
 Schedules an arbitrary message to receiver for time point t.
 
virtual void schedule_message (time_point t, group target, strong_actor_ptr sender, message content)=0
 Schedules an arbitrary message to target for time point t.
 
virtual void cancel_all ()=0
 Cancels all timeouts and scheduled messages.
 

Detailed Description

A monotonic clock for scheduling timeouts and delayed messages.

Member Function Documentation

◆ set_ordinary_timeout()

virtual void caf::actor_clock::set_ordinary_timeout ( time_point  t,
abstract_actor self,
std::string  type,
uint64_t  id 
)
pure virtual

Schedules a timeout_msg for self at time point t, overriding any previous receive timeout.


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