...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Start a new stackful coroutine that executes in the context of a strand.
template< typename Function> void spawn( const boost::asio::io_context::strand & s, Function && function, const boost::coroutines::attributes & attributes = boost::coroutines::attributes());
This function is used to launch a new coroutine.
Identifies a strand. By starting multiple coroutines on the same strand, the implementation ensures that none of those coroutines can execute simultaneously.
The coroutine function. The function must have the signature:
void function(yield_context yield);
Boost.Coroutine attributes used to customise the coroutine.