5 个不稳定版本
0.3.3 | 2019年10月30日 |
---|---|
0.2.2 | 2019年10月23日 |
0.2.1 | 2019年10月23日 |
0.2.0 | 2019年10月23日 |
0.1.0 | 2019年10月23日 |
#1067 在 并发 中
5KB
56 行
Stoplight
是一个用于可停止线程/任务的库。
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);
lib.rs
:
Stoplight 是一个用于可停止线程/任务的库。
use stoplight;
use std::sync::atomic::{Ordering};
// spawn our task, this creates a new OS thread.
let th = stoplight::spawn(|stop| {
while !stop.load(Ordering::Relaxed) {}
42
});
// stop() signals the thread to stop, and then join returns its return value.
th.stop();
assert_eq!(th.join().unwrap(), 42);