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< void, Fp > Struct Template Reference

#include <future.hpp>

Inheritance diagram for boost::detail::future_async_shared_state< void, Fp >:
Collaboration diagram for boost::detail::future_async_shared_state< void, Fp >:

Public Types

typedef shared_state< voidbase_type
 
typedef void shared_future_get_result_type
 
typedef void move_dest_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 (BOOST_THREAD_FWD_REF(Fp) f)
 
virtual void wait (bool rethrow)
 
void mark_finished_with_result_internal (boost::unique_lock< boost::mutex > &lock)
 
void mark_finished_with_result ()
 
virtual void get ()
 
virtual void get_sh ()
 
void set_value_at_thread_exit ()
 
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
 

Static Public Member Functions

static void run (future_async_shared_state *that, BOOST_THREAD_FWD_REF(Fp) f)
 

Public Attributes

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_
 

Member Typedef Documentation

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
void boost::detail::shared_state_base::do_continuation ( boost::unique_lock< boost::mutex > &  )
inlineinherited
virtual void boost::detail::shared_state< void >::get ( )
inlinevirtualinherited
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
virtual void boost::detail::shared_state< void >::get_sh ( )
inlinevirtualinherited
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
void boost::detail::future_async_shared_state_base< void >::join ( )
inlineprotectedinherited
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< void >::mark_finished_with_result_internal ( 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().

template<typename Fp >
static void boost::detail::future_async_shared_state< void, Fp >::run ( future_async_shared_state< void, Fp > *  that,
BOOST_THREAD_FWD_REF(Fp)  f 
)
inlinestatic
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
virtual void boost::detail::future_async_shared_state_base< void >::wait ( bool  rethrow)
inlinevirtualinherited

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
boost::thread boost::detail::future_async_shared_state_base< void >::thr_
protectedinherited
boost::condition_variable boost::detail::shared_state_base::waiters
inherited

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