是否有可能在锈蚀中创建一个不确定数量的生锈发送和读取通道?基本上,我希望将一对任务发送到通道,作为初始化的一种形式,然后以并行方式开始执行这些任务。但问题是,任务本身有时可以创建并将任务发送到通道。当所有任务都被消耗时,通道应该关闭。我认为通道实现最适合这种特殊情况,但是Rust似乎没有多生产者+多消费者通道实现。或者,如果我试图实现一些我不应该和/或不可能实现的东西,那么对一个全新范式的建议也是受欢迎的。
谢谢!
发布于 2022-04-17 18:42:28
您可以使用std::sync::mpsc
或crossbeam_channel
,形式更好,速度更快,但需要拉一个外部板条箱。
std::sync::mpsc
的文档:https://doc.rust-lang.org/nightly/std/sync/mpsc/index.html
crossbeam_channel
的文档:https://docs.rs/crossbeam-channel/latest/crossbeam_channel/
https://stackoverflow.com/questions/71902897
复制相似问题