libstdc++
Collaboration diagram for Futures:

Classes

class  std::__basic_future< _Res >
 
struct  std::__future_base
 
struct  std::__future_base::_Result< _Res & >
 
struct  std::__future_base::_Result< void >
 
class  std::future< _Res >
 
class  std::future< _Res & >
 
class  std::future< void >
 
class  std::future_error
 
struct  std::is_error_code_enum< future_errc >
 
class  std::packaged_task< _Res(_ArgTypes...)>
 
class  std::promise< _Res >
 
class  std::promise< _Res & >
 
class  std::promise< void >
 
class  std::shared_future< _Res >
 
class  std::shared_future< _Res & >
 
class  std::shared_future< void >
 

Enumerations

enum  std::future_errc { broken_promise, future_already_retrieved, promise_already_satisfied, no_state }
 
enum  std::future_status { ready, timeout, deferred }
 
enum  std::launch { any, async, sync }
 

Functions

 std::__basic_future< _Res >::__basic_future (const shared_future< _Res > &)
 
 std::__basic_future< _Res >::__basic_future (shared_future< _Res > &&)
 
 std::__basic_future< _Res >::__basic_future (future< _Res > &&)
 
static _Setter< void, void > std::__future_base::_State_base::__setter (promise< void > *__prom)
 
template<typename _Fn , typename... _Args>
future< typename result_of
< _Fn(_Args...)>::type > 
std::async (launch __policy, _Fn &&__fn, _Args &&...__args)
 
template<typename _Fn , typename... _Args>
__async_sfinae_helper
< typename decay< _Fn >::type,
_Fn, _Args...>::type 
std::async (_Fn &&__fn, _Args &&...__args)
 
const error_category & std::future_category ()
 
error_code std::make_error_code (future_errc __errc)
 
error_condition std::make_error_condition (future_errc __errc)
 
void std::promise< void >::set_value ()
 
template<typename _Res >
void std::swap (promise< _Res > &__x, promise< _Res > &__y)
 
template<typename _Res , typename... _ArgTypes>
void std::swap (packaged_task< _Res(_ArgTypes...)> &__x, packaged_task< _Res(_ArgTypes...)> &__y)
 

Detailed Description

Classes for futures support.

Enumeration Type Documentation

enum std::future_errc
strong

Error code for futures.

Definition at line 61 of file future.

enum std::future_status
strong

Status code for futures.

Definition at line 134 of file future.

enum std::launch
strong

Launch code for futures.

Definition at line 126 of file future.

Function Documentation

template<typename _Fn , typename... _Args>
future< typename result_of< _Fn(_Args...)>::type > std::async ( launch  __policy,
_Fn &&  __fn,
_Args &&...  __args 
)

async

Definition at line 1355 of file future.

References std::async().

template<typename _Fn , typename... _Args>
__async_sfinae_helper< typename decay< _Fn >::type, _Fn, _Args...>::type std::async ( _Fn &&  __fn,
_Args &&...  __args 
)
inline

async, potential overload

Definition at line 1378 of file future.

References std::any().

Referenced by std::async().

const error_category& std::future_category ( )

Points to a statically-allocated object derived from error_category.

Referenced by std::make_error_code(), and std::make_error_condition().

error_code std::make_error_code ( future_errc  __errc)
inline

Overload for make_error_code.

Definition at line 79 of file future.

References std::future_category().

error_condition std::make_error_condition ( future_errc  __errc)
inline

Overload for make_error_condition.

Definition at line 84 of file future.

References std::future_category().

template<typename _Res , typename... _ArgTypes>
void std::swap ( packaged_task< _Res(_ArgTypes...)> &  __x,
packaged_task< _Res(_ArgTypes...)> &  __y 
)
inline

swap

Definition at line 1289 of file future.