Precise the type of single_task parameter as std::function<void(void)>