Stay organized with collections Save and categorize content based on your preferences.
Implement ISO/IEC TS 19571:2016 future<T>
.
Creates a new future that unwraps rhs
.
This constructor creates a new shared state that becomes satisfied when both rhs
and rhs.get()
become satisfied. If rhs
is satisfied, but rhs.get()
returns an invalid future then the newly created future becomes satisfied with a std::future_error
exception, and the exception error code is std::future_errc::broken_promise
.
noexcept
constructor I (coryan) believe this is a defect in the technical specification, as this creates a new shared state: shared states are dynamically allocated, and the allocator (which might be the default operator new
) may raise. Parameter Name Description rhs
future< future< T > > &&
Creates a future from a future whose result type is convertible to this future's result type.
Parameters Name Descriptionrhs
future< U > &&
class U
typename Enable
state
std::shared_ptr< shared_state_type >
Waits until the shared state becomes ready, then retrieves the value stored in the shared state.
Note: This operation invalidates the future, subsequent calls will fail, the application should capture the returned value because it would. Exceptions Type Description...
any exceptions stored in the shared state. std::future_error
with std::no_state if the future does not have a shared state. Returns Type Description T
then(F &&)
Attach a continuation to the future.
Attach a callable func to be invoked when the future is ready. The return type is a future wrapping the return type of func.
Side effects: valid() == false
if the operation is successful.
func
F &&
a Callable to be invoked when the future is ready. The function might be called immediately, e.g., if the future is ready.
typename F
internal::then_helper< F, T >::future_t
future<T>
where T is std::result_of_t<F, R>
(basically). If T matches future<U>
then it returns future<U>
. The returned future will contain the result of func.
Alias Of: typename internal::future_base< T >::shared_state_type
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-14 UTC.
[[["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-08-14 UTC."],[[["The documentation covers various versions of `future` from 2.10.1 to 2.37.0-rc, with the latest version being 2.37.0-rc."],["The `future` class implements ISO/IEC TS 19571:2016, offering functionalities like constructors, `get()`, and `then()` to manage asynchronous operations."],["The `future` class provides multiple constructors, including one for unwrapping nested futures and another for converting between compatible result types."],["The `get()` function retrieves the result of an asynchronous operation, but invalidates the future upon successful completion, making subsequent calls to `get()` invalid."],["The `then()` function allows attaching a callable to be executed when a future is ready, returning a new future that wraps the result of the callable."]]],[]]
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4