2 个不稳定版本

使用旧的 Rust 2015

0.1.0 2017年6月10日
0.0.1 2017年5月28日

#5#发送-接收

Download history 19/week @ 2023-11-26 3/week @ 2023-12-03 6/week @ 2023-12-10 14/week @ 2023-12-17 15/week @ 2023-12-24 12/week @ 2024-01-07 12/week @ 2024-01-14 3/week @ 2024-01-21 15/week @ 2024-02-04 15/week @ 2024-02-11 29/week @ 2024-02-18 29/week @ 2024-02-25 21/week @ 2024-03-03 30/week @ 2024-03-10

每月下载量:109
用于 10 个包 (直接使用4个)

MPL-2.0 许可证

52KB
884

dharma 包提供高级多线程支持。

bridge 模块

bridge 模块提供与标准 spmc 类似的函数,但它不是产生固定的发送器-接收器对,而是允许它们自由连接,因此我们可以有许多发送器向多个接收器发送数据,以及一个接收器可以灵活地监听多个发送器。

signaler 模块

在此基础上,我们添加了 Signaler,它可以订阅接收器以接收信号(应用程序定义的事件),创建通知机制。

event_loop 模块

Signaler 的基础上,我们添加了 EventLoop,它是分配给线程的事件队列。 EventLoop 有分配的 Module,它们构成独立的应用程序组件。 Module 可以以灵活的方式分配给 EventLoop,这使得控制线程中处理的任务变得容易。 Module 不共享内存,并通过信号进行通信。

dispatcher 模块

每个线程框架都应该提供监听系统事件的机制。 Dispatcher 允许注册 EventHandler(包装文件描述符),并在它们分配的系统事件准备处理时调用它们。

system 模块

最后一个模块包含处理系统信号的辅助代码。

依赖项

~1.5MB
~36K SLoC