Class promise<T> (2.11.0)

Implement promise<T> as defined in ISO/IEC TS 19571:2016.

Constructors

promise()

Creates a promise with an unsatisfied shared state.

promise(std::function< void()>)

Creates a promise with an unsatisfied shared state.

Parameter
Name Description
cancellation_callback std::function< void()>

promise(null_promise_t)

Creates a promise without a shared state.

Parameter
Name Description
x null_promise_t

promise(promise &&)

Constructs a new promise and transfer any shared state from rhs.

Parameter
Name Description
promise &&

promise(promise const &)

Parameter
Name Description
promise const &

Operators

operator=(promise &&)

Abandons the shared state in *this, if any, and transfers the shared state from rhs.

Parameter
Name Description
rhs promise &&
Returns
Type Description
promise &

operator=(promise const &)

Parameter
Name Description
promise const &
Returns
Type Description
promise &

Functions

swap(promise &)

Swaps the shared state in *this with rhs.

Parameter
Name Description
other promise &
Returns
Type Description
void

get_future()

Creates the future<T> using the same shared state as *this.

Returns
Type Description
future< T >

set_value(T)

Satisfies the shared state.

Parameter
Name Description
value T
Exceptions
Type Description
std::future_error with std::future_errc::promise_already_satisfied if the shared state is already satisfied.
std::future_error with std::no_state if the promise does not have a shared state.
Returns
Type Description
void