gpt4 book ai didi

rust - 如何对发件人进行多路复用?

转载 作者:行者123 更新时间:2023-11-29 07:55:38 30 4
gpt4 key购买 nike

我有一堆 SyncSenders。我想要一套“准备发送”。

目前我正在这样做:

for c in data {
loop {
for tx in sync_senders {
if let Ok(_) = tx.try_send(c) {
do something;
...
}
}
until some sends are success, break
}
}

有没有办法在 SyncSender 上进行多路复用,这样我就可以准备好一组?

最佳答案

有很多方法可以做到这一点,我可能会设置另一个(异步) channel 并让工作线程在空闲时立即将它们的发送者发回......

 while let Ok(sender) = sync_senders.recv() {
...
}

但是你为什么要这样做呢?也许是 multiple-consumer channel更适合您的目的?

关于rust - 如何对发件人进行多路复用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29620969/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com