When to use promise over async or packaged_task?
std::async std::async is a neat and easy way to get a std::future, but: It does not always start a new thread; the enum value std::launch::async can be passed as the first argument to std::async in order to ensure that a new thread is created to execute the task specified by func, thus ensuring that func … Read more