4 个版本 (破坏性更新)
0.4.0 | 2020 年 5 月 26 日 |
---|---|
0.3.0 | 2020 年 3 月 18 日 |
0.2.0 | 2020 年 3 月 17 日 |
0.1.0 | 2019 年 12 月 12 日 |
在 并发 中排名 820
每月下载量 57
9KB
114 行
Waithandle
一个使线程间信号传递更便捷的 Rust 库。
底层使用 Condvar 和 Mutex 来阻塞线程,而不消耗 CPU 时间。
用法
use std::time::Duration;
// Create the signaler and the listener
let (signaler, listener) = waithandle::new();
// Signal a thread
signaler.signal();
// Did someone signal us?
if listener.check() {
println!("signal received");
}
// Wait for 5 seconds or until someone signals us
if listener.wait(Duration::from_secs(5)) {
println!("signal received");
}
运行示例
> cargo run --example simple
Doing some work...
Doing some work...
Doing some work...
Doing some work...
Doing some work...
Signaling thread...
Joining thread...
Someone told us to exit!
Done!
运行基准测试
> cargo bench