
std::async - cppreference.com
Oct 28, 2024 · The function template std::async runs the function f asynchronously (potentially in a separate thread which might be a part of a thread pool) and returns a std::future that will eventually …
std::future - cppreference.com
Mar 12, 2024 · An asynchronous operation (created via std::async, std::packaged_task, or std::promise) can provide a std::future object to the creator of that asynchronous operation. The creator of the …
Coroutines (C++20) - cppreference.com
Mar 5, 2025 · A coroutine is a function that can suspend execution to be resumed later. Coroutines are stackless: they suspend execution by returning to the caller, and the data that is required to resume …
std::shared_future - cppreference.com
Oct 23, 2023 · The class template std::shared_future provides a mechanism to access the result of asynchronous operations, similar to std::future, except that multiple threads are allowed to wait for …
Standard library header <future> (C++11) - cppreference.com
Nov 27, 2023 · namespace std { enum class future_errc { broken_promise = /* implementation-defined */, future_already_retrieved = /* implementation-defined */, promise_already ...
Concurrency support library (since C++11) - cppreference.com
Apr 29, 2025 · Futures The standard library provides facilities to obtain values that are returned and to catch exceptions that are thrown by asynchronous tasks (i.e. functions launched in separate …
std::future<T>:: wait_for - cppreference.com
Aug 27, 2021 · If the future is the result of a call to std::async that used lazy evaluation, this function returns immediately without waiting. This function may block for longer than timeout_duration due to …
std:: promise - cppreference.com
Oct 23, 2023 · The class template std::promise provides a facility to store a value or an exception that is later acquired asynchronously via a std::future object created by the std::promise object. Note that …
std::packaged_task - cppreference.com
Feb 10, 2025 · The class template std::packaged_task wraps any Callable target (function, lambda expression, bind expression, or another function object) so that it can be invoked asynchronously. Its …
std::future<T>::wait - cppreference.com
Aug 27, 2021 · Blocks until the result becomes available. valid()==true after the call.