std::future<T>::~future (3) - Linux Manuals

std::future<T>::~future: std::future<T>::~future


std::future<T>::~future - std::future<T>::~future


~future(); (since C++11)

Releases any shared state. This means

* if the return object or provider holds the last reference to its shared state, the shared state is destroyed; and
* the return object or provider gives up its reference to its shared state; and

* these actions will not block for the shared state to become ready, except that it may block if all of the following are true: the shared state was created by a call to std::async, the shared state is not yet ready, and this was the last reference to the shared state. (since C++14)