C++
void f() { auto self(enable_shared_from_this()); std::future<int> future = std::async(std::launch::async, [self]() { return g(); }); std::future_status status; status = future.wait_for(std::chrono::milliseconds(1000)); if (status == std::future</int>…