Is there an existing async multi consumer channel?

I'm looking for something like crossbeam_channel::unbounded (crossbeam_channel - Rust) but async so that i can await on multiple receivers and distribute "work".

Is there an async implementation for a multi-consumer channel?

Just off my memory, I think flume and async-channel both do this.

1 Like

@alice doesn’t tokio’s mpsc also support multiple receivers by using Arc<Receiver<T>>?

nevermind, I missed the &mut self on the receive method.