Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::shared_future< R > Class Template Reference

#include <future.hpp>

Inheritance diagram for boost::shared_future< R >:
Collaboration diagram for boost::shared_future< R >:

Public Types

typedef R value_type
 
typedef future_state::state state
 
typedef detail::shared_state
< R >::move_dest_type 
move_dest_type
 

Public Member Functions

 shared_future (shared_future const &other)
 
BOOST_CONSTEXPR shared_future ()
 
 shared_future (exceptional_ptr const &ex)
 
 ~shared_future ()
 
shared_futureoperator= (BOOST_THREAD_COPY_ASSIGN_REF(shared_future) other)
 
 shared_future (BOOST_THREAD_RV_REF(shared_future) other) BOOST_NOEXCEPT
 
 shared_future (BOOST_THREAD_RV_REF(unique_future< R >) other) BOOST_NOEXCEPT
 
shared_futureoperator= (BOOST_THREAD_RV_REF(shared_future) other) BOOST_NOEXCEPT
 
shared_futureoperator= (BOOST_THREAD_RV_REF(unique_future< R >) other) BOOST_NOEXCEPT
 
void swap (shared_future &other) BOOST_NOEXCEPT
 
bool run_if_is_deferred ()
 
bool run_if_is_deferred_or_ready ()
 
detail::shared_state< R >
::shared_future_get_result_type 
get ()
 
template<typename R2 >
boost::disable_if< is_void< R2 >
, typename
detail::shared_state< R >
::shared_future_get_result_type >
::type 
get_or (BOOST_THREAD_RV_REF(R2) v)
 
void set_exceptional_if_invalid ()
 
void swap (basic_future &that) BOOST_NOEXCEPT
 
state get_state () const
 
bool is_ready () const
 
bool has_exception () const
 
bool has_value () const
 
launch launch_policy (boost::unique_lock< boost::mutex > &lk) const
 
exception_ptr get_exception_ptr ()
 
bool valid () const BOOST_NOEXCEPT
 
void wait () const
 

Static Public Member Functions

static future_ptr make_exceptional_future_ptr (exceptional_ptr const &ex)
 

Public Attributes

future_ptr future_
 

Friends

class detail::future_waiter
 
class promise< R >
 
class packaged_task< R >
 

Member Typedef Documentation

template<typename R >
typedef detail::shared_state<R>::move_dest_type boost::detail::basic_future< R >::move_dest_type
inherited
template<typename R>
typedef future_state::state boost::shared_future< R >::state
template<typename R>
typedef R boost::shared_future< R >::value_type

Constructor & Destructor Documentation

template<typename R>
boost::shared_future< R >::shared_future ( shared_future< R > const &  other)
inline
template<typename R>
BOOST_CONSTEXPR boost::shared_future< R >::shared_future ( )
inline
template<typename R>
boost::shared_future< R >::shared_future ( exceptional_ptr const &  ex)
inline
template<typename R>
boost::shared_future< R >::~shared_future ( )
inline
template<typename R>
boost::shared_future< R >::shared_future ( BOOST_THREAD_RV_REF(shared_future< R >)  other)
inline
template<typename R>
boost::shared_future< R >::shared_future ( BOOST_THREAD_RV_REF(unique_future< R >)  other)
inline

Member Function Documentation

template<typename R>
detail::shared_state<R>::shared_future_get_result_type boost::shared_future< R >::get ( )
inline
template<typename R >
exception_ptr boost::detail::basic_future< R >::get_exception_ptr ( )
inlineinherited
template<typename R>
template<typename R2 >
boost::disable_if< is_void<R2>, typename detail::shared_state<R>::shared_future_get_result_type>::type boost::shared_future< R >::get_or ( BOOST_THREAD_RV_REF(R2)  v)
inline
template<typename R >
state boost::detail::basic_future< R >::get_state ( ) const
inlineinherited
template<typename R >
bool boost::detail::basic_future< R >::has_exception ( ) const
inlineinherited
template<typename R >
bool boost::detail::basic_future< R >::has_value ( ) const
inlineinherited
template<typename R >
bool boost::detail::basic_future< R >::is_ready ( ) const
inlineinherited
template<typename R >
launch boost::detail::basic_future< R >::launch_policy ( boost::unique_lock< boost::mutex > &  lk) const
inlineinherited
template<typename R>
shared_future& boost::shared_future< R >::operator= ( BOOST_THREAD_COPY_ASSIGN_REF(shared_future< R >)  other)
inline
template<typename R>
shared_future& boost::shared_future< R >::operator= ( BOOST_THREAD_RV_REF(shared_future< R >)  other)
inline
template<typename R>
shared_future& boost::shared_future< R >::operator= ( BOOST_THREAD_RV_REF(unique_future< R >)  other)
inline
template<typename R>
bool boost::shared_future< R >::run_if_is_deferred ( )
inline
template<typename R>
bool boost::shared_future< R >::run_if_is_deferred_or_ready ( )
inline
template<typename R >
void boost::detail::basic_future< R >::swap ( basic_future< R > &  that)
inlineinherited
template<typename R>
void boost::shared_future< R >::swap ( shared_future< R > &  other)
inline
template<typename R >
bool boost::detail::basic_future< R >::valid ( ) const
inlineinherited
template<typename R >
void boost::detail::basic_future< R >::wait ( void  ) const
inlineinherited

Friends And Related Function Documentation

template<typename R>
friend class detail::future_waiter
friend
template<typename R>
friend class packaged_task< R >
friend
template<typename R>
friend class promise< R >
friend

Member Data Documentation


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