Trait aleph_bft::rmc::TaskScheduler[][src]

pub trait TaskScheduler<T>: Send + Sync {
    fn add_task(&mut self, task: T);
fn next_task<'life0, 'async_trait>(
        &'life0 mut self
    ) -> Pin<Box<dyn Future<Output = Option<T>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
; }
Expand description

Abstraction of a task-scheduling logic

Because the network can be faulty, the task of sending a message must be performed multiple times to ensure that the recipient receives each message. The trait TaskScheduler<T> describes in what intervals some abstract task of type T should be performed.

Required methods

Implementors