Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

spawn (7 of 7 overloads)

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(),
    typename constraint< is_convertible< ExecutionContext &, execution_context & >::value >::type  = 0);

This function is used to launch a new coroutine.

Parameters

ctx

Identifies the execution context that will run the coroutine. The new coroutine is implicitly given its own strand within this execution context.

function

The coroutine function. The function must have the signature:

void function(yield_context yield);

attributes

Boost.Coroutine attributes used to customise the coroutine.


PrevUpHomeNext