12次发布

0.2.5 2023年3月14日
0.2.4 2022年9月6日
0.2.3 2021年11月1日
0.2.2 2021年5月14日
0.0.2 2020年3月4日

#519 in 异步

Download history 13/week @ 2024-04-01

每月下载量 68次
用于 stakker_tui

MIT/Apache

71KB
1K SLoC

Rust 1K SLoC // 0.0% comments Perl 139 SLoC // 0.2% comments

Mio I/O轮询集成于 Stakker

此集成将 mio 库与 Stakker 集成,使处理 mio 源更加方便。

文档

请参阅 crate 文档

许可证

此项目受Apache License 2.0或MIT许可证之一许可,您可选其一。(请参阅LICENSE-APACHELICENSE-MIT)。

贡献

除非您明确声明,否则您提交给此crate的任何贡献,根据Apache-2.0许可证定义,都将按上述方式双重许可,无需附加条款或条件。


lib.rs:

mio 集成到 Stakker

MioPoll 是主类型。它处理轮询并将 mio 事件转换为 Stakker 前向调用。它提供优先级级别,允许某些事件优先于其他事件。此外,通过析构处理程序处理令牌清理。

TcpStreamBuf 使得为 mio::net::TcpStream 进行缓冲更加容易。

FdSource 用于封装任意UNIX文件描述符,以便与 MioPoll 一起使用。

所有调用在内部都会在 ErrorKind::Interrupted 时重试,因此调用者不需要处理这个错误。在非阻塞事件循环中,重试是最有用的行为。在使用阻塞I/O的应用程序中,你可能希望在接收到信号时中断阻塞调用,但这种情况不适用于这里。

该库使用的 mio 版本被重新导出为 stakker_mio::mio。应用程序应使用它而不是直接导入 mio,以确保使用相同的版本。

依赖项

~1–11MB
~120K SLoC