C ++ 11 std::async - отличная абстракция потока, но каждый поток должен быть соединен, так как же std::async присоединяется к потокам, не открывая его пользователю?
std::async