#cron #schedule

cronjob

cronjob library for scheduling your methods

3 releases (breaking)

Uses old Rust 2015

0.4.17 May 17, 2022
0.3.17 Aug 13, 2020
0.2.17 Aug 13, 2020
0.2.15 Sep 12, 2017
0.1.12 Aug 25, 2017

#417 in Rust patterns

Download history 55/week @ 2022-12-05 78/week @ 2022-12-12 82/week @ 2022-12-19 49/week @ 2022-12-26 29/week @ 2023-01-02 55/week @ 2023-01-09 74/week @ 2023-01-16 129/week @ 2023-01-23 104/week @ 2023-01-30 94/week @ 2023-02-06 108/week @ 2023-02-13 92/week @ 2023-02-20 79/week @ 2023-02-27 109/week @ 2023-03-06 88/week @ 2023-03-13 159/week @ 2023-03-20

440 downloads per month

Apache-2.0

9KB
120 lines

cronjob

A libary for creating cronjobs for your application methods.

It's on crates.io now, check it out https://crates.io/crates/cronjob.

How to use the project

Add this to your Cargo.toml under [dependencies]

cronjob = "0.4.17"

examples

This is an example for the unthreaded version.

extern crate cronjob;
use cronjob::CronJob;

fn main() {
    // Create the `CronJob` object.
    let mut cron = CronJob::new("Test Cron", on_cron);
    // Set to fire when seconds is 0, 2 or 4
    cron.seconds("0,2,4");
    // Set to fire when day of week is Monday or Friday
    cron.day_of_week("Mon,Fri");
    // Set offset for UTC
    cron.offset(0);
    // Start the cronjob
    cron.start_job();
}
    
// Our cronjob handler
fn on_cron(name: &str) {
    println!("{}: It's time!", name);
}

This is an example for the threaded version.

extern crate cronjob;
use cronjob::CronJob;

fn main() {
    // Create the `CronJob` object.
    let cron = CronJob::new("Test Cron", on_cron);
    // Set to fire when seconds is 0
    cron.seconds("0");
    // Set offset for UTC
    cron.offset(0);
    // Start the cronjob
    CronJob::start_job_threaded(cron)
}
    
// Our cronjob handler
fn on_cron(name: &str) {
    println!("{}: It's time!", name);
}

If you have any issues, please report.

Dependencies

~2–27MB
~449K SLoC