Skip to content

EasyPost/synchronous-timer-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.