First, the async runtime:
My advice: If you're new to async Rust, start with a single-threaded-by-default runtime like smol
:
https://docs.rs/smol/latest/smol/
Tokio's multi-threading by default and its frequent recommendation (especially to newcomers) is, IMHO, one of the biggest mistakes the Rust community has made!
Smol has everything you commonly need:
- channel
- Stream adapters
- etc.
3/?