replaced boost::thread with std::thread