Skip to main content

Simplest Rust Scheduled Task Implementation - JobScheduler

JobScheduler

Here I recommend the simplest and easiest to use: JobScheduler

It's a simple cron-like job scheduling library.

Very Simple to Use

Add job_scheduler to your Cargo.toml:

job_scheduler = "1.2.1"

Example:

extern crate job_scheduler;
use job_scheduler::{JobScheduler, Job};
use std::time::Duration;

fn main() {
let mut sched = JobScheduler::new();

sched.add(Job::new("1/10 * * * * *".parse().unwrap(), || {
println!("I get executed every 10 seconds!");
}));

loop {
sched.tick();

std::thread::sleep(Duration::from_millis(500));
}
}

You'll need to learn cron expressions. I recommend this blog: Cron Expression Explained. You can also use online tools to generate them: Online Cron Expression Generator