snooze-rs 0.0.3

An experimental library for sleeping periodically
Documentation

snooze-rs

Experimental library for sleeping periodically in Rust code.

Build Status

Usage:

Cargo.toml:

[dependencies]
snooze-rs = "0.0.3"

Crate root:

extern crate snooze;
extern crate time;

Basic usage:

use snooze::{Snooze, SnoozeError};
use time::duration::Duration;

fn sleep_and_work() -> Result<(), SnoozeError> {
  let mut snooze = try!(Snooze::new(Duration::milliseconds(42)));
  while should_continue() {
    try!(snooze.wait());
    do_things();
  }
  Ok(())
}

The function do_things() will be called approximately every 42 ms, depending on system timer accuracy and assuming do_things() takes less than 42 ms.