8 个版本 (4 个重大更新)
0.5.0 | 2021年4月18日 |
---|---|
0.4.0 | 2019年5月5日 |
0.3.0 | 2019年5月1日 |
0.2.1 | 2018年12月6日 |
0.1.2 | 2018年1月13日 |
#449 in 并发
每月46次下载
用于 danmuji
42KB
479 行
嘿!听!
Hey_listen
是一个旨在满足所有需求的事件调度器集合!
目前覆盖
- 优先级调度
- 线程池调度
- 异步调度
查看 examples
文件夹了解如何使用每个调度器。
欢迎所有人贡献,查看 CONTRIBUTING.md
获取进一步指导。
示例
以下是一个如何使用事件调度器的快速示例
use hey_listen::sync::{
ParallelDispatcher, ParallelListener, ParallelDispatchResult,
};
#[derive(Clone, Eq, Hash, PartialEq)]
enum Event {
Variant,
}
struct Listener {}
impl ParallelListener<Event> for Listener {
fn on_event(&self, _event: &Event) -> Option<ParallelDispatchResult> {
println!("I'm listening! :)");
None
}
}
fn main() {
let listener = Listener {};
let mut dispatcher = ParallelDispatcher::<Event>::new(4).expect("Could not construct threadpool");
dispatcher.add_listener(Event::Variant, listener);
dispatcher.dispatch_event(&Event::Variant);
}
安装
将此添加到您的 Cargo.toml
[dependencies]
hey_listen = "0.5"
依赖项
~0.6–4MB
~69K SLoC