libstdc++
Futures
Collaboration diagram for Futures:

Classes

class  std::__basic_future< _Res >
 Common implementation for future and shared_future. More...
struct  std::__future_base
 Base class and enclosing scope. More...
struct  std::__future_base::_Result< _Res & >
 Partial specialization for reference types. More...
struct  std::__future_base::_Result< void >
 Explicit specialization for void. More...
class  std::future< _Res >
 Primary template for future. More...
class  std::future< _Res & >
 Partial specialization for future<R&> More...
class  std::future< void >
 Explicit specialization for future<void> More...
class  std::future_error
 Exception type thrown by futures. More...
struct  std::is_error_code_enum< future_errc >
 Specialization. More...
class  std::packaged_task< _Res(_ArgTypes...)>
 packaged_task More...
class  std::promise< _Res >
 Primary template for promise. More...
class  std::promise< _Res & >
 Partial specialization for promise<R&> More...
class  std::promise< void >
 Explicit specialization for promise<void> More...
class  std::shared_future< _Res >
 Primary template for shared_future. More...
class  std::shared_future< _Res & >
 Partial specialization for shared_future<R&> More...
class  std::shared_future< void >
 Explicit specialization for shared_future<void> More...

Enumerations

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

Functions

 std::__basic_future< _Res >::__basic_future (const shared_future< _Res > &) noexcept
 std::__basic_future< _Res >::__basic_future (shared_future< _Res > &&) noexcept
 std::__basic_future< _Res >::__basic_future (future< _Res > &&) noexcept
template<typename _Signature , typename _Fn , typename _Alloc >
static shared_ptr
< __future_base::_Task_state_base
< _Signature > > 
std::__create_task_state (_Fn &&__fn, const _Alloc &__a)
template<typename _BoundFn >
static std::shared_ptr
< _State_base > 
std::__future_base::_S_make_async_state (_BoundFn &&__fn)
template<typename _BoundFn >
static std::shared_ptr
< _State_base > 
std::__future_base::_S_make_deferred_state (_BoundFn &&__fn)
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>
future< typename result_of
< _Fn(_Args...)>::type > 
std::async (_Fn &&__fn, _Args &&...__args)
const error_category & std::future_category () noexcept
error_code std::make_error_code (future_errc __errc) noexcept
error_condition std::make_error_condition (future_errc __errc) noexcept
constexpr launch std::operator& (launch __x, launch __y)
launch & std::operator&= (launch &__x, launch __y)
constexpr launch std::operator^ (launch __x, launch __y)
launch & std::operator^= (launch &__x, launch __y)
constexpr launch std::operator| (launch __x, launch __y)
launch & std::operator|= (launch &__x, launch __y)
constexpr launch std::operator~ (launch __x)
void std::promise< void >::set_value ()
void std::promise< void >::set_value_at_thread_exit ()
shared_future< _Res > std::future< _Res >::share ()
shared_future< _Res & > std::future< _Res & >::share ()
shared_future< void > std::future< void >::share ()
template<typename _Res >
void std::swap (promise< _Res > &__x, promise< _Res > &__y) noexcept
template<typename _Res , typename... _ArgTypes>
void std::swap (packaged_task< _Res(_ArgTypes...)> &__x, packaged_task< _Res(_ArgTypes...)> &__y) noexcept

Detailed Description

Classes for futures support.


Enumeration Type Documentation

Error code for futures.

Definition at line 65 of file future.

Status code for futures.

Definition at line 164 of file future.

Launch code for futures.

Definition at line 127 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 1703 of file future.

template<typename _Fn , typename... _Args>
future< typename result_of< _Fn(_Args...)>::type > std::async ( _Fn &&  __fn,
_Args &&...  __args 
) [inline]

async, potential overload

Definition at line 1723 of file future.

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 83 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 88 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 1570 of file future.