|
virtual | ~TaskRunner ()=default |
|
template<typename TaskType > |
bool | post_task (TaskLocation &&location, TaskType &&task) |
|
template<typename OwnerType , typename TaskType > |
bool | post_task (TaskLocation &&location, std::weak_ptr< OwnerType > weak_owner, TaskType &&task) |
|
template<typename TaskType , typename ReplyType > |
bool | post_task_with_reply (TaskLocation &&location, TaskType &&task, ReplyType &&reply) |
|
template<typename OwnerType , typename TaskType , typename ReplyType > |
bool | post_task_with_reply (TaskLocation &&location, std::weak_ptr< OwnerType > weak_owner, TaskType &&task, ReplyType &&reply) |
|
template<typename TaskType > |
bool | post_task_with_delay (TaskLocation &&location, std::chrono::milliseconds delay, TaskType &&task) |
|
template<typename OwnerType , typename TaskType > |
bool | post_task_with_delay (TaskLocation &&location, std::weak_ptr< OwnerType > weak_owner, std::chrono::milliseconds delay, TaskType &&task) |
|
template<typename TaskType , typename ReplyType > |
bool | post_task_with_delay_and_reply (TaskLocation &&location, std::chrono::milliseconds delay, TaskType &&task, ReplyType &&reply) |
|
template<typename OwnerType , typename TaskType , typename ReplyType > |
bool | post_task_with_delay_and_reply (TaskLocation &&location, std::weak_ptr< OwnerType > weak_owner, std::chrono::milliseconds delay, TaskType &&task, ReplyType &&reply) |
|
Task runner implementation for executing tasks in sequence. Only one task posted to this task runner will execute at a time. Tasks are executed in a FIFO manner; once one task completes, the next task in line will be posted for execution.
The caveat is with delayed tasks. If task A is posted with some delay, then task B is posted with no delay, task B will be posted for execution first. Task A will only be posted for execution once its delay has expired.
- Author
- Timothy Flynn (trfly.nosp@m.nn89.nosp@m.@pm.m.nosp@m.e)
- Version
- August 12, 2018