tokio::select! — Tokio-specific. futures::select! — runtime-agnostic.
tokio::select!:
futures::select!:
1tokio::select! {2 val = fetch_a() => println!("A: {}", val),3 val = fetch_b() => println!("B: {}", val),4}56futures::select! {7 val = fetch_a().fuse() => println!("A: {}", val),8 val = fetch_b().fuse() => println!("B: {}", val),9 complete => println!("Done"),10 default => (),11}
Key: tokio::select! for Tokio, futures::select! for portability.