2 unstable releases

Uses old Rust 2015

0.1.0 May 14, 2016
0.0.1 May 1, 2015

#3 in #delayed

Download history 73/week @ 2024-07-20 62/week @ 2024-07-27 148/week @ 2024-08-03 108/week @ 2024-08-10 109/week @ 2024-08-17 173/week @ 2024-08-24 144/week @ 2024-08-31 131/week @ 2024-09-07 98/week @ 2024-09-14 172/week @ 2024-09-21 260/week @ 2024-09-28 118/week @ 2024-10-05 144/week @ 2024-10-12 159/week @ 2024-10-19 91/week @ 2024-10-26 113/week @ 2024-11-02

514 downloads per month
Used in 5 crates (4 directly)

MIT license

11KB
209 lines

This module exposes functionality to create receivers that receive notifications after a specified period of time or at a specified frequency.

Build status

Documentation

Examples

At its simplest, oneshot_ms can be used to put the thread to sleep. Unlike with std:🧵:sleep, this could be used with Select to be waiting for one of several Receivers to fire.

use timer::oneshot_ms;

let timer = oneshot_ms(1500);
timer.recv().unwrap();
println!("1.5 seconds have elapsed.");

Periodic Receivers can be created using periodic_ms.

use timer::periodic_ms;

let tick = periodic_ms(2000);
thread::sleep_ms(1000);
let tock = periodic_ms(2000);
loop {
    tick.recv().unwrap();
    println!("Tick");
    tock.recv().unwrap();
    println!("Tock");
}

lib.rs:

This crate exposes functionality to create receivers that receive notifications after a specified period of time or at a specified frequency.

Examples

At its simplest, oneshot_ms can be used to put the thread to sleep. Unlike with std:🧵:sleep, this could be used with Select to be waiting for one of several Receivers to fire.

let timer = oneshot(Duration::from_millis(1500));
timer.recv().unwrap();
println!("1.5 seconds have elapsed.");

Periodic Receivers can be created using periodic_ms.

let tick = periodic(Duration::from_millis(2000));
thread::sleep_ms(1000);
let tock = periodic(Duration::from_millis(2000));

loop {
    tick.recv().unwrap();
    println!("Tick");
    tock.recv().unwrap();
    println!("Tock");
}

Dependencies

~14KB