When calling `std::async`, it creates new thread. Better having thread pool and enqueue to it functions and lambdas with return of `std::future`.
When calling
std::async, it creates new thread. Better having thread pool and enqueue to it functions and lambdas with return ofstd::future.