Struct green::coroutine::Coroutine[src]

pub struct Coroutine {
    pub current_stack_segment: Stack,
    pub saved_context: Context,
}

A coroutine is nothing more than a (register context, stack) pair.

Fields

current_stack_segment

The segment of stack on which the task is currently running or if the task is blocked, on which the task will resume execution.

Servo needs this to be public in order to tell SpiderMonkey about the stack bounds.

saved_context

Always valid if the task is alive and not running.

Methods

impl Coroutine

fn empty() -> Coroutine

fn recycle(self, stack_pool: &mut StackPool)

Destroy coroutine and try to reuse std::stack segment.