|
| | timer_wheel_manager_template () |
| | Default constructor. More...
|
| |
| | timer_wheel_manager_template (unsigned int wheel_size, monotonic_clock::duration granularity) |
| | Constructor with wheel size and granularity parameters. More...
|
| |
| | timer_wheel_manager_template (unsigned int wheel_size, monotonic_clock::duration granularity, Error_Logger error_logger, Actor_Exception_Handler exception_handler) |
| | Constructor with all parameters. More...
|
| |
| | manager_impl_template (Args &&... args) |
| | Constructor with all parameters. More...
|
| |
| void | reset () |
| | Reset all timers and return manager to the initial state. More...
|
| |
| void | process_expired_timers () |
| | Perform processing of expired timers. More...
|
| |
| std::tuple< bool, monotonic_clock::time_point > | nearest_time_point () |
| | Get the time for next process_expired_timers invocation. More...
|
| |
| monotonic_clock::duration | timeout_before_nearest_timer (Duration default_timeout) |
| | Get the sleeping time before the earlist timer expiration. More...
|
| |
| | basic_methods_impl_mixin (Args &&... args) |
| | Constructor with all parameters. More...
|
| |
| timer_holder | allocate () |
| | Allocate of new timer object. More...
|
| |
| void | activate (timer_holder timer, Duration_1 pause, timer_action action) |
| | Activate timer and schedule it for execution. More...
|
| |
| void | activate (scoped_timer_object &timer, Duration_1 pause, timer_action action) |
| | Activate a scoped timer and schedule it for execution. More...
|
| |
| void | activate (Duration_1 pause, timer_action action) |
| | Activate timer and schedule it for execution. More...
|
| |
| void | activate (timer_holder timer, Duration_1 pause, Duration_2 period, timer_action action) |
| | Activate timer and schedule it for execution. More...
|
| |
| void | activate (scoped_timer_object &timer, Duration_1 pause, Duration_2 period, timer_action action) |
| | Activate a scoped timer and schedule it for execution. More...
|
| |
| void | activate (Duration_1 pause, Duration_2 period, timer_action action) |
| | Activate timer and schedule it for execution. More...
|
| |
| void | reschedule (timer_holder timer, Duration_1 pause, timer_action action) |
| | Perform an attempt to reschedule a timer. More...
|
| |
| void | reschedule (timer_holder timer, Duration_1 pause, Duration_2 period, timer_action action) |
| | Perform an attempt to reschedule a timer. More...
|
| |
| void | deactivate (timer_holder timer) |
| | Deactivate timer and remove it from the list. More...
|
| |
| void | deactivate (scoped_timer_object &timer) |
| | Deactivate timer and remove it from the list. More...
|
| |
| timer_quantities | get_timer_quantities () |
| | Count of timers of various types. More...
|
| |
| bool | empty () |
| | Check for emptiness. More...
|
| |
|
| using | thread_safety = typename details::timer_wheel_engine< Thread_Safety, Timer_Action, Error_Logger, Actor_Exception_Handler > ::thread_safety |
| | A typedef for thread safety type from Engine. More...
|
| |
| using | timer_action = typename details::timer_wheel_engine< Thread_Safety, Timer_Action, Error_Logger, Actor_Exception_Handler > ::timer_action |
| | An alias for timer_action type. More...
|
| |
| using | scoped_timer_object = typename details::timer_wheel_engine< Thread_Safety, Timer_Action, Error_Logger, Actor_Exception_Handler > ::scoped_timer_object |
| | An alias for scoped timer objects. More...
|
| |
| using | timer_holder = timer_object_holder< typename details::timer_wheel_engine< Thread_Safety, Timer_Action, Error_Logger, Actor_Exception_Handler > ::thread_safety > |
| | Shorthand for timer objects' smart pointer. More...
|
| |
| details::timer_wheel_engine< Thread_Safety, Timer_Action, Error_Logger, Actor_Exception_Handler > | m_engine |
| | Actual timer engine instance. More...
|
| |
template<typename Thread_Safety, typename Timer_Action = default_timer_action_type, typename Error_Logger = default_error_logger, typename Actor_Exception_Handler = default_actor_exception_handler>
class timertt::timer_wheel_manager_template< Thread_Safety, Timer_Action, Error_Logger, Actor_Exception_Handler >
A timer wheel manager template.
- Note
- Please see description of details::timer_wheel_engine for the details of the timer wheel mechanism.
- Template Parameters
-
| Thread_Safety | Thread-safety indicator. Must be timertt::thread_safety::unsafe or timertt::thread_safety::safe. |
| Timer_Action | type of functor to perform an user-defined action when timer expires. This must be Moveable and MoveConstructible type. |
| Error_Logger | type of logger for errors detected during timer handling. Interface for error logger is defined by default_error_logger class. |
| Actor_Exception_Handler | type of handler for dealing with exceptions thrown from timer actors. Interface for exception handler is defined by default_actor_exception_handler. |
- Since
- v.1.1.0