- scheduling tasks - define task order (run after) - check task status - implementing std::future will be done in the separate task.