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

Download history 57/week @ 2024-07-28

每月下载量 57

MIT 许可证

9KB
114

Waithandle

一个使线程间信号传递更便捷的 Rust 库。

底层使用 CondvarMutex 来阻塞线程,而不消耗 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

无运行时依赖