libstdc++
std::shared_future< _Res > Class Template Reference
Inheritance diagram for std::shared_future< _Res >:
[legend]

Public Types

template<typename _Res >
using _Ptr = unique_ptr< _Res, _Result_base::_Deleter >
 
using _State_base = _State_baseV2
 

Public Member Functions

 shared_future (const shared_future &__sf) noexcept
 
 shared_future (future< _Res > &&__uf) noexcept
 
 shared_future (shared_future &&__sf) noexcept
 
const _Res & get () const
 
shared_futureoperator= (const shared_future &__sf) noexcept
 
shared_futureoperator= (shared_future &&__sf) noexcept
 
bool valid () const noexcept
 
void wait () const
 
template<typename _Rep , typename _Period >
future_status wait_for (const chrono::duration< _Rep, _Period > &__rel) const
 
template<typename _Clock , typename _Duration >
future_status wait_until (const chrono::time_point< _Clock, _Duration > &__abs) const
 

Static Public Member Functions

template<typename _Res , typename _Allocator >
static _Ptr< _Result_alloc< _Res, _Allocator > > _S_allocate_result (const _Allocator &__a)
 
template<typename _Res , typename _Tp >
static _Ptr< _Result< _Res > > _S_allocate_result (const std::allocator< _Tp > &__a)
 
template<typename _BoundFn >
static std::shared_ptr< _State_base > _S_make_async_state (_BoundFn &&__fn)
 
template<typename _BoundFn >
static std::shared_ptr< _State_base > _S_make_deferred_state (_BoundFn &&__fn)
 
template<typename _Res_ptr , typename _BoundFn >
static _Task_setter< _Res_ptr, _BoundFn > _S_task_setter (_Res_ptr &__ptr, _BoundFn &__call)
 

Protected Types

typedef __future_base::_Result< _Res > & __result_type
 
typedef shared_ptr< _State_base > __state_type
 

Protected Member Functions

__result_type _M_get_result () const
 
void _M_swap (__basic_future &__that) noexcept
 

Detailed Description

template<typename _Res>
class std::shared_future< _Res >

Primary template for shared_future.

Definition at line 128 of file future.

Member Typedef Documentation

◆ _Ptr

template<typename _Res >
using std::__future_base::_Ptr = unique_ptr<_Res, _Result_base::_Deleter>
inherited

A unique_ptr for result objects.

Definition at line 223 of file future.

Constructor & Destructor Documentation

◆ shared_future() [1/3]

template<typename _Res >
std::shared_future< _Res >::shared_future ( const shared_future< _Res > &  __sf)
inlinenoexcept

Copy constructor.

Definition at line 899 of file future.

◆ shared_future() [2/3]

template<typename _Res >
std::shared_future< _Res >::shared_future ( future< _Res > &&  __uf)
inlinenoexcept

Construct from a future rvalue.

Definition at line 902 of file future.

◆ shared_future() [3/3]

template<typename _Res >
std::shared_future< _Res >::shared_future ( shared_future< _Res > &&  __sf)
inlinenoexcept

Construct from a shared_future rvalue.

Definition at line 907 of file future.

Member Function Documentation

◆ _M_get_result()

template<typename _Res>
__result_type std::__basic_future< _Res >::_M_get_result ( ) const
inlineprotectedinherited

Wait for the state to be ready and rethrow any stored exception.

Definition at line 714 of file future.

◆ get()

template<typename _Res >
const _Res& std::shared_future< _Res >::get ( ) const
inline

Retrieving the value.

Definition at line 925 of file future.


The documentation for this class was generated from the following file: