#schedule #cron #methods

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

#1241 in Rust patterns

Download history 189/week @ 2024-12-07 130/week @ 2024-12-14 68/week @ 2024-12-21 33/week @ 2024-12-28 99/week @ 2025-01-04 178/week @ 2025-01-11 147/week @ 2025-01-18 175/week @ 2025-01-25 160/week @ 2025-02-01 162/week @ 2025-02-08 197/week @ 2025-02-15 324/week @ 2025-02-22 207/week @ 2025-03-01 178/week @ 2025-03-08 188/week @ 2025-03-15 210/week @ 2025-03-22

819 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–8.5MB
~48K SLoC