Skip to main content

timely/scheduling/
mod.rs

1//! Types and traits to activate and schedule fibers.
2
3pub mod activate;
4pub mod current;
5
6pub use self::activate::{Activations, Activator, ActivateOnDrop, SyncActivator};
7
8/// A type that can be scheduled.
9pub trait Schedule {
10    /// A descriptive name for the operator
11    fn name(&self) -> &str;
12    /// An address identifying the operator.
13    fn path(&self) -> &[usize];
14    /// Schedules the operator, receives "cannot terminate" boolean.
15    ///
16    /// The return value indicates whether `self` has outstanding
17    /// work and would be upset if the computation terminated.
18    fn schedule(&mut self) -> bool;
19}