Trait timely::scheduling::activate::Scheduler [−][src]
Methods required to act as a timely scheduler.
The core methods are the activation of “paths”, sequences of integers, and
the enumeration of active paths by prefix. A scheduler may delay the report
of a path indefinitely, but it should report at least one extension for the
empty path &[]
or risk parking the worker thread without a certain unpark.
There is no known harm to “spurious wake-ups” where a not-active path is
returned through extensions()
.
Required methods
fn activate(&mut self, path: &[usize])
[src]
Mark a path as immediately scheduleable.
fn extensions(&mut self, path: &[usize], dest: &mut Vec<usize>)
[src]
Populates dest
with next identifiers on active extensions of path
.
This method is where a scheduler is allowed to exercise some discretion, in that it does not need to present all extensions, but it can instead present only those that the runtime should schedule.