Implement promise<T> as defined in ISO/IEC TS 19571:2016.
Constructors
promise
Creates a promise with an unsatisfied shared state.
promise
Creates a promise with an unsatisfied shared state.
Parameter
Name
Description
cancellation_callback
std::function< void()>
promise
Creates a promise without a shared state.
Parameter
Name
Description
x
null_promise_t
promise
Constructs a new promise and transfer any shared state from rhs.
Parameter
Name
Description
promise &&
~promise
Abandons any shared state.
If the shared state was not already satisfied it becomes satisfied with a std::future_error exception. The error code in this exception is std::future_errc::broken_promise.
promise
Parameter
Name
Description
promise const &
Operators
operator=
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=
Parameter
Name
Description
promise const &
Returns
Type
Description
promise &
Functions
swap
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.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-03-05 UTC."],[[["The document details the `promise` class in C++, specifically referencing implementations from version 2.10.1 up to the latest release candidate 2.37.0-rc."],["The `promise` class can be created with or without a shared state, offering constructors that accept a cancellation callback or a `null_promise_t` parameter."],["Shared state management is handled via copy and move semantics, including operators and methods for transfering and abandoning shared state, as well as a `swap` function to exchange shared state with another `promise`."],["The `get_future` function allows the creation of a `future\u003cT\u003e` object linked to the `promise`'s shared state, while `set_value` is used to satisfy the shared state."],["The destruction of a promise that has not been satisfied results in the shared state becoming satisfied with a `std::future_error` exception."]]],[]]