1use std::time::Duration;
2
3use anyhow::Result;
4use easycron::*;
5use tokio::time::sleep;
6
7#[tokio::main]
8async fn main() -> Result<()> {
9 let mut crond = CronBuilder::default().debug(true).build().unwrap();
11 crond.run().await;
13
14 let j1 = Job::new("test", "* * * * * *", || println!("test"))?;
16 crond.add(j1).await;
17
18 sleep(Duration::from_secs(3)).await;
20 let j2 = Job::new("test2", "* * * * * *", || println!("test2"))?;
21 crond.add(j2.clone()).await;
22
23 sleep(Duration::from_secs(3)).await;
25 crond.remove(j2.id).await;
26
27 tokio::signal::ctrl_c().await?;
29 crond.stop();
30
31 tokio::signal::ctrl_c().await?;
33 Ok(())
34}