lool/examples/sched.rs

31 lines
824 B
Rust

use lool::sched::{recur, ruleset, Scheduler};
fn my_action() {
let now = chrono::Local::now();
println!("I'm running at {}", now.format("%Y-%m-%d %H:%M:%S"));
std::thread::sleep(std::time::Duration::from_secs(15));
}
fn main() {
let mut sched = Scheduler::new();
let handler = sched.schedule("test-task", my_action, recur(ruleset().at_second(0)));
std::thread::sleep(std::time::Duration::from_secs(1));
loop {
let is_running = handler.is_running();
let last_run = handler.get_last_run();
let next_run = handler.get_next_run();
let name = handler.name();
println!(
"task {name} |--> running: {is_running}, last: {last_run:?}, next: {next_run:?}"
);
std::thread::sleep(std::time::Duration::from_secs(2));
}
}