...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
(Deprecated: Use overloads with a completion token.) Start a new stackful coroutine that executes on a given execution context.
template< typename Function, typename ExecutionContext> void spawn( ExecutionContext & ctx, Function && function, const boost::coroutines::attributes & attributes = boost::coroutines::attributes(), constraint_t< is_convertible< ExecutionContext &, execution_context & >::value > = 0);
This function is used to launch a new coroutine.
Identifies the execution context that will run the coroutine. The new coroutine is implicitly given its own strand within this execution context.
The coroutine function. The function must have the signature:
void function(yield_context yield);
Boost.Coroutine attributes used to customise the coroutine.