Rust 如何在发送者上进行多路复用?
我有很多同步发送者。我想买一套“准备发送”的 目前我正在这样做:Rust 如何在发送者上进行多路复用?,rust,Rust,我有很多同步发送者。我想买一套“准备发送”的 目前我正在这样做: 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上进行多
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上进行多路复用,这样我就可以得到一组现成的同步发送器?有很多方法可以做到这一点,我可能只需要设置另一个(异步)通道,让工作线程在空闲时尽快将其发送器发送回来
while let Ok(sender) = sync_senders.recv() {
...
}
但你为什么要这么做?也许a更适合你的目的