TaskScheduler

Trait TaskScheduler 

Source
pub trait TaskScheduler: Send + Sync {
    // Required methods
    fn schedule_task(&mut self, task: Box<dyn ExecutableTask>) -> SklResult<()>;
    fn next_task(&mut self) -> Option<Box<dyn ExecutableTask>>;
    fn queue_size(&self) -> usize;
    fn set_config(&mut self, config: SchedulerConfig);
}
Expand description

Task scheduler trait for managing task execution order

Required Methods§

Source

fn schedule_task(&mut self, task: Box<dyn ExecutableTask>) -> SklResult<()>

Add a task to the schedule

Source

fn next_task(&mut self) -> Option<Box<dyn ExecutableTask>>

Get the next task to execute

Source

fn queue_size(&self) -> usize

Get current queue size

Source

fn set_config(&mut self, config: SchedulerConfig)

Set scheduler configuration

Implementors§