#background-thread #timer #synchronous #scheduling #jobs #simpler #timer-scheduler

synchronous-timer

Simpler synchronous timer/scheduler for Rust applications

1 unstable release

0.1.0 Jun 6, 2022

#13 in #background-thread

ISC license

20KB
435 lines

This is a library, with an API inspired by timer.rs, for scheduling jobs that run synchronously on a background thread.

CI Documentation crates.io

Example:

use std::time::Duration;
use synchronous_timer::Timer;

fn main() {
    let mut timer = Timer::new();
    timer
        .schedule_in(Duration::from_secs(5), || {
            println!("I will run on the background thread in 5 seconds")
        })
        .detach();
    timer.schedule_immediately(|| println!("I will run on the background thread right now"));
    let handle = timer.schedule_in(Duration::from_secs(1), || println!("I will never run"));
    drop(handle);
    std::thread::sleep(Duration::from_secs(6));
}

This work is licensed under the ISC license, a copy of which can be found in LICENSE.txt.

Dependencies

~0.4–6MB
~13K SLoC