Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::detail::future_async_shared_state_base< Rp > Struct Template Reference

future_async_shared_state_base More...

#include <future.hpp>

Inheritance diagram for boost::detail::future_async_shared_state_base< Rp >:
Collaboration diagram for boost::detail::future_async_shared_state_base< Rp >:

Public Types

typedef shared_state< Rp > base_type
 
typedef
boost::csbl::unique_ptr< Rp > 
storage_type
 
typedef Rpconst & source_reference_type
 
typedef Rp move_dest_type
 
typedef const Rp & shared_future_get_result_type
 
typedef std::list
< boost::condition_variable_any * > 
waiter_list
 
typedef shared_ptr
< shared_state_base
continuation_ptr_type
 

Public Member Functions

 future_async_shared_state_base ()
 
 ~future_async_shared_state_base ()
 
virtual void wait (bool rethrow)
 
typedef BOOST_THREAD_RV_REF (Rp) rvalue_source_type
 
void mark_finished_with_result_internal (source_reference_type result_, boost::unique_lock< boost::mutex > &lock)
 
void mark_finished_with_result_internal (rvalue_source_type result_, boost::unique_lock< boost::mutex > &lock)
 
void mark_finished_with_result (source_reference_type result_)
 
void mark_finished_with_result (rvalue_source_type result_)
 
storage_typeget_storage (boost::unique_lock< boost::mutex > &lock)
 
virtual move_dest_type get ()
 
virtual
shared_future_get_result_type 
get_sh ()
 
void set_value_at_thread_exit (source_reference_type result_)
 
void set_value_at_thread_exit (rvalue_source_type result_)
 
virtual void launch_continuation (boost::unique_lock< boost::mutex > &)
 
void set_deferred ()
 
void set_async ()
 
waiter_list::iterator register_external_waiter (boost::condition_variable_any &cv)
 
void remove_external_waiter (waiter_list::iterator it)
 
void do_continuation (boost::unique_lock< boost::mutex > &)
 
void mark_finished_internal (boost::unique_lock< boost::mutex > &lock)
 
void make_ready ()
 
void do_callback (boost::unique_lock< boost::mutex > &lock)
 
virtual bool run_if_is_deferred ()
 
virtual bool run_if_is_deferred_or_ready ()
 
void wait_internal (boost::unique_lock< boost::mutex > &lk, bool rethrow=true)
 
void mark_exceptional_finish_internal (boost::exception_ptr const &e, boost::unique_lock< boost::mutex > &lock)
 
void mark_exceptional_finish ()
 
void set_exception_at_thread_exit (exception_ptr e)
 
bool has_value () const
 
bool has_value (unique_lock< boost::mutex > &) const
 
bool has_exception () const
 
bool has_exception (unique_lock< boost::mutex > &) const
 
bool is_deferred (boost::lock_guard< boost::mutex > &) const
 
launch launch_policy (boost::unique_lock< boost::mutex > &) const
 
future_state::state get_state () const
 
exception_ptr get_exception_ptr ()
 
exception_ptr get_exception_ptr (boost::unique_lock< boost::mutex > &lock)
 
template<typename F , typename U >
void set_wait_callback (F f, U *u)
 
virtual void execute (boost::unique_lock< boost::mutex > &)
 
shared_ptr< shared_state_baseshared_from_this ()
 
shared_ptr
< shared_state_baseconst > 
shared_from_this () const
 
void _internal_accept_owner (shared_ptr< X > const *ppx, Y *py) const
 

Public Attributes

storage_type result
 
boost::exception_ptr exception
 
bool done
 
bool is_deferred_
 
launch policy_
 
bool is_constructed
 
boost::mutex mutex
 
boost::condition_variable waiters
 
waiter_list external_waiters
 
boost::function< void()> callback
 
continuation_ptr_type continuation_ptr
 

Protected Member Functions

void join ()
 

Protected Attributes

boost::thread thr_
 

Detailed Description

template<typename Rp>
struct boost::detail::future_async_shared_state_base< Rp >

future_async_shared_state_base

Member Typedef Documentation

template<typename Rp>
typedef shared_state<Rp> boost::detail::future_async_shared_state_base< Rp >::base_type
typedef Rp boost::detail::shared_state< Rp >::move_dest_type
inherited
typedef boost::csbl::unique_ptr<Rp > boost::detail::shared_state< Rp >::storage_type
inherited

Constructor & Destructor Documentation

Member Function Documentation

void boost::enable_shared_from_this< shared_state_base >::_internal_accept_owner ( shared_ptr< X > const *  ppx,
Y *  py 
) const
inlineinherited
typedef boost::detail::shared_state< Rp >::BOOST_THREAD_RV_REF ( Rp  )
inherited
void boost::detail::shared_state_base::do_continuation ( boost::unique_lock< boost::mutex > &  )
inlineinherited
exception_ptr boost::detail::shared_state_base::get_exception_ptr ( )
inlineinherited

References boost::lock().

exception_ptr boost::detail::shared_state_base::get_exception_ptr ( boost::unique_lock< boost::mutex > &  lock)
inlineinherited
future_state::state boost::detail::shared_state_base::get_state ( ) const
inlineinherited
bool boost::detail::shared_state_base::has_exception ( ) const
inlineinherited
bool boost::detail::shared_state_base::has_exception ( unique_lock< boost::mutex > &  ) const
inlineinherited
bool boost::detail::shared_state_base::has_value ( unique_lock< boost::mutex > &  ) const
inlineinherited
bool boost::detail::shared_state_base::is_deferred ( boost::lock_guard< boost::mutex > &  ) const
inlineinherited
virtual void boost::detail::shared_state_base::launch_continuation ( boost::unique_lock< boost::mutex > &  )
inlinevirtualinherited
launch boost::detail::shared_state_base::launch_policy ( boost::unique_lock< boost::mutex > &  ) const
inlineinherited
void boost::detail::shared_state_base::make_ready ( )
inlineinherited
void boost::detail::shared_state< Rp >::mark_finished_with_result ( rvalue_source_type  result_)
inlineinherited
void boost::detail::shared_state< Rp >::mark_finished_with_result_internal ( rvalue_source_type  result_,
boost::unique_lock< boost::mutex > &  lock 
)
inlineinherited
waiter_list::iterator boost::detail::shared_state_base::register_external_waiter ( boost::condition_variable_any cv)
inlineinherited
void boost::detail::shared_state_base::remove_external_waiter ( waiter_list::iterator  it)
inlineinherited

References boost::lock().

virtual bool boost::detail::shared_state_base::run_if_is_deferred ( )
inlinevirtualinherited
virtual bool boost::detail::shared_state_base::run_if_is_deferred_or_ready ( )
inlinevirtualinherited
void boost::detail::shared_state_base::set_async ( )
inlineinherited
void boost::detail::shared_state_base::set_exception_at_thread_exit ( exception_ptr  e)
inlineinherited
template<typename F , typename U >
void boost::detail::shared_state_base::set_wait_callback ( f,
U *  u 
)
inlineinherited
template<typename Rp>
virtual void boost::detail::future_async_shared_state_base< Rp >::wait ( bool  rethrow)
inlinevirtual

Reimplemented from boost::detail::shared_state_base.

Member Data Documentation

boost::function<void()> boost::detail::shared_state_base::callback
inherited
continuation_ptr_type boost::detail::shared_state_base::continuation_ptr
inherited
bool boost::detail::shared_state_base::done
inherited
boost::exception_ptr boost::detail::shared_state_base::exception
inherited
waiter_list boost::detail::shared_state_base::external_waiters
inherited
bool boost::detail::shared_state_base::is_constructed
inherited
bool boost::detail::shared_state_base::is_deferred_
inherited
boost::mutex boost::detail::shared_state_base::mutex
mutableinherited
launch boost::detail::shared_state_base::policy_
inherited
storage_type boost::detail::shared_state< Rp >::result
inherited
boost::condition_variable boost::detail::shared_state_base::waiters
inherited

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