30 个版本
0.5.13 | 2024 年 5 月 19 日 |
---|---|
0.5.12 | 2024 年 2 月 28 日 |
0.5.11 | 2024 年 1 月 8 日 |
0.5.10 | 2023 年 12 月 24 日 |
0.1.1 | 2017 年 11 月 27 日 |
在 并发 中排名第 187
每月下载量 6,031,341
在 7,256 个 包中使用(直接使用 1,233 个)
360KB
6K SLoC
Crossbeam Channel
此包提供了用于消息传递的多生产者多消费者通道。它是对 std::sync::mpsc
的替代,具有更多特性和更好的性能。
一些亮点
Sender
和Receiver
可以被克隆并在线程之间共享。- 主要有两种通道:
bounded
和unbounded
。 - 提供了一些方便的额外通道,如
after
、never
和tick
。 select!
宏可以在多个通道操作上阻塞。Select
可以在动态构建的通道操作列表上进行选择。- 通道非常少地使用锁,以实现最大的 性能。
用法
将以下内容添加到您的 Cargo.toml
[dependencies]
crossbeam-channel = "0.5"
兼容性
Crossbeam Channel 支持至少六个月前的稳定 Rust 版本,并且每次最低支持的 Rust 版本增加时,都会发布一个新的次要版本。目前,最低支持的 Rust 版本是 1.60。
许可证
根据以下任一许可证授权:
- Apache许可证2.0版本(《LICENSE-APACHE》或http://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可证(《LICENSE-MIT》或http://opensource.org/licenses/MIT)
由您自行选择。
贡献
除非您明确声明,否则根据Apache-2.0许可证定义,您有意提交的任何贡献,均应双许可如上所述,不附加任何额外条款或条件。
第三方软件
本产品包含第三方开发的软件的副本和修改
-
《examples/matching.rs》包括Stefan Nilsson的《matching.go》,许可协议为Creative Commons Attribution 3.0 Unported License。
-
《tests/mpsc.rs》包括Rust编程语言的代码修改,许可协议为MIT许可证和Apache许可证2.0版本。
-
《tests/golang.rs》基于Go编程语言的代码,许可协议为3-Clause BSD许可证。
更多详细信息请参阅源代码文件。
第三方许可证的副本可在《LICENSE-THIRD-PARTY》中找到。