Skip to main content

basic/
basic.rs

1use std::time::Duration;
2use taskbot_rs::{Scheduler, TaskBuilder};
3use tokio;
4
5#[tokio::main]
6async fn main() {
7    let task = TaskBuilder::new("demo_task", || {
8        tokio::spawn(async {
9            println!("Tentative de tâche...");
10            Err::<(), i32>(1)
11        })
12    })
13    .max_retries(3)
14    .retry_base_delay(Duration::from_millis(50))
15    .on_success(|| println!("🎉 Task succeeded!"))
16    .on_failure(|| println!("💥 Task failed after all retries"))
17    .build();
18
19    let mut scheduler = Scheduler::new();
20    scheduler.add(task);
21    scheduler.run().await;
22}