| Crates.io | stoplight |
| lib.rs | stoplight |
| version | 0.3.3 |
| created_at | 2019-10-23 01:50:14.606532+00 |
| updated_at | 2019-10-30 15:45:31.694852+00 |
| description | Stoplight is a simple library for stoppable tasks/threads. |
| homepage | |
| repository | https://github.com/UlisseMini/stoplight |
| max_upload_size | |
| id | 174766 |
| size | 5,389 |
Is a small library for stoppable threads/tasks.
use stoplight::Thread;
use std::sync::atomic::{AtomicBool, Ordering};
// spawn our task, this creates a new OS thread.
let th = Thread::spawn(|stop| {
while !stop.load(Ordering::Relaxed) {}
42
});
// stop signals the thread to stop.
th.stop();
// join waits for the thread to exit, then gives its return value.
assert_eq!(th.join().unwrap(), 42);