1 2 3 4 5 6 7 8 9 10 11
use async_trait::async_trait; use std::time::Duration; use crate::error::Result; #[async_trait] pub trait ScheduledJob: Send + Sync { fn name(&self) -> &str; fn interval(&self) -> Duration; async fn run(&self) -> Result<()>; }