2 unstable releases

Uses old Rust 2015

0.1.0 May 14, 2016
0.0.1 May 1, 2015

#4 in #recv

Download history 56/week @ 2023-12-10 65/week @ 2023-12-17 40/week @ 2023-12-24 24/week @ 2023-12-31 48/week @ 2024-01-07 44/week @ 2024-01-14 36/week @ 2024-01-21 36/week @ 2024-01-28 44/week @ 2024-02-04 65/week @ 2024-02-11 96/week @ 2024-02-18 109/week @ 2024-02-25 104/week @ 2024-03-03 91/week @ 2024-03-10 82/week @ 2024-03-17 76/week @ 2024-03-24

367 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