A new version of crossbeam-channel is published. This channel in Rust works almost identically to channels in Go. It supports select operation and is fast. Now we just need to make it work with futures. :) Benchmarks: https://i.imgur.com/tRI4HMO.png Docs: https://docs.rs/crossbeam-channel/0.2.0 …
That was a tough decision with tradeoffs both ways, but in the end it simplified the interface a lot. Rationale: https://github.com/crossbeam-rs/crossbeam-channel/issues/39 … An argument by Russ Cox: https://github.com/golang/go/issues/18511#issuecomment-270425548 … Fortunately, it's possible to simulate the old behavior: https://github.com/crossbeam-rs/crossbeam-channel/blob/master/examples/mpsc.rs …