#async-channel #channel #async #reduce #values #reading #mpmc

batch-channel

一次读取和写入多个值以减少开销的异步通道

14 个版本

0.4.1 2024年6月30日
0.4.0 2024年6月30日
0.3.7 2023年10月11日
0.3.6 2023年9月18日
0.1.0 2023年8月3日

#529 in 异步

Download history 130/week @ 2024-06-24 186/week @ 2024-07-01

316 每月下载

MIT 许可证

35KB
666

一次读取和写入多个值以减少开销的异步 MPMC 通道。

有时,大量的小值会通过通道分发给工作者。考虑目录遍历:每个 readdir() 调用都会生成一批目录条目。批处理也可以帮助消费端。考虑使用接收到的值查询 SQLite — 大批量可以减少获取 SQLite 锁的平均成本,并且可以发出批量查询。

可以想象这个 crate 的自然扩展,但目前尚未实现

  • 带优先级的通道
  • futures::sink::Sinkfutures::stream::Stream 实现接口

询问它们是否有帮助。

依赖项

~0.4–25MB
~351K SLoC