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

From cppreference.com
< cpp‎ | thread‎ | future

~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;
- the current object gives up its reference to its shared state;

these actions will not block for the shared state to become ready, except that they 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 the current object was the last reference to the shared state. | (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.

Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/thread/future/%7Efuture&oldid=145348"