monitor_rs

A Rust library that implements the Monitor synchronization construct.

License: MIT

Example

```rust extern crate monitor_rs;

use monitor_rs::{Monitor, MonitorGuard}; use std::sync::Arc; use std::thread; use std::time::Duration;

fn main() { let mon = Arc::new(Monitor::new(false)); { let mon = mon.clone(); let _ = thread::spawn(move || { thread::sleep(Duration::new(1, 0)); mon.withlock(&|done: MonitorGuard| { *done = true; done.notifyone(); }); }); }

mon.with_lock(&|mut done| {
    while !*done {
        done.wait();
    }
});

} ```

For more examples, see the tests in lib.rs.