std::experimental:: future

From cppreference.com
Defined in header <experimental/future>
template < class T > class future ;
(1) (concurrency TS)
template < class T > class future < T & > ;
(2) (concurrency TS)
template <> class future < void > ;
(3) (concurrency TS)

The class template std::experimental::future extends std::future with the following operations:

  • an unwrapping constructor from future<future<T>> ;
  • a member function is_ready to query whether the associated shared state is ready; and
  • a member function then to attach a continuation to the future.

However, there is no interoperation between std::experimental::future and std::future .

Member functions

construct a future object
(public member function)
checks if the shared state is ready
(public member function)
attaches a continuation to a future
(public member function)
moves the future object
(public member function)

Members identical to std::future

Member functions

Note that share() returns a std::experimental::shared_future<T> . The behavior is otherwise identical.

destructs the future object
(public member function of std::future<T> )
transfers the shared state from * this to a shared_future and returns it
(public member function of std::future<T> )
Getting the result
returns the result
(public member function of std::future<T> )
State
checks if the future has a shared state
(public member function of std::future<T> )
waits for the result to become available
(public member function of std::future<T> )
waits for the result, returns if it is not available for the specified timeout duration
(public member function of std::future<T> )
waits for the result, returns if it is not available until specified time point has been reached
(public member function of std::future<T> )

Example

See also

(concurrency TS)
a version of std::shared_future enhanced with continuations and other features
(class template)