#thread-pool #thread #semaphore #async

blocking-permit

阻塞操作许可和线程池

8个稳定版本

1.3.3 2021年10月28日
1.3.2 2021年1月28日
1.2.1 2020年8月29日
1.2.0 2020年2月4日
0.1.0 2019年12月20日

#934 in 异步

Download history 4/week @ 2024-03-09 1/week @ 2024-03-16 23/week @ 2024-03-30 6/week @ 2024-04-06 1/week @ 2024-04-20 1/week @ 2024-04-27

每月下载量 65
用于 2 个crates(通过 body-image-futio

MIT/Apache

68KB
1.5K SLoC

blocking-permit

Rustdoc Change Log crates.io CI Status

此crate提供以下功能:

  • 一个专门的、定制的线程池 DispatchPool,用于将阻塞或其他长时间运行的操作从主线程或反应线程卸载。

  • 一个 BlockingPermit,通过 Semaphore 类型来限制并发阻塞操作的数量。

  • 一个 Cleaver,用于将 Stream 缓冲区分割成更易于管理的尺寸。

  • 一个 YieldStream,用于在 Stream 项目之间产生。

最低支持的Rust版本

MSRV := 1.45.2

该crate在低于此版本的rustc(通过build.rs版本检查)时会快速失败,并且也在此版本上进行CI测试。

许可证

本项目根据以下任一许可证进行双许可:

贡献

除非你明确声明,否则根据Apache许可证定义,你提交给blocking-permit以供包含的贡献将被双许可,上述内容,无任何额外条款或条件。

依赖项

~0.6–2MB
~30K SLoC