std::future<T>::~future
From cppreference.com
~future(); |
(since C++11) | |
Releases any shared state. This means
- if the current object holds the last reference to its shared state, the shared state is destroyed; and
- the current object gives up its reference to its shared state; and
|
(since C++14) |
In practice, these actions will block only if the task’s launch policy is std::launch::async (see "Effective Modern C++" Item 36), either because that was chosen by the runtime system or because it was specified in the call to std::async.