...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Create an executor_work_guard
object.
template< typename Executor> executor_work_guard< Executor > make_work_guard( const Executor & ex, typename constraint< is_executor< Executor >::value||execution::is_executor< Executor >::value >::type = 0); » more... template< typename ExecutionContext> executor_work_guard< typename ExecutionContext::executor_type > make_work_guard( ExecutionContext & ctx, typename constraint< is_convertible< ExecutionContext &, execution_context & >::value >::type = 0); » more... template< typename T> executor_work_guard< typename constraint< !is_executor< T >::value &&!execution::is_executor< T >::value &&!is_convertible< T &, execution_context & >::value, associated_executor< T > >::type::type > make_work_guard( const T & t); » more... template< typename T, typename Executor> executor_work_guard< typename associated_executor< T, Executor >::type > make_work_guard( const T & t, const Executor & ex, typename constraint< is_executor< Executor >::value||execution::is_executor< Executor >::value >::type = 0); » more... template< typename T, typename ExecutionContext> executor_work_guard< typename associated_executor< T, typename ExecutionContext::executor_type >::type > make_work_guard( const T & t, ExecutionContext & ctx, typename constraint< !is_executor< T >::value >::type = 0, typename constraint< !execution::is_executor< T >::value >::type = 0, typename constraint< !is_convertible< T &, execution_context & >::value >::type = 0, typename constraint< is_convertible< ExecutionContext &, execution_context & >::value >::type = 0); » more...
Header: boost/asio/executor_work_guard.hpp
Convenience header: boost/asio.hpp