select { case v := <-ch1: ... case ch2 <- x: ... default: ... } chờ multiple channel operations, chạy case sẵn sàng đầu tiên.
- Nếu nhiều case sẵn sàng → chọn random.
defaultchạy nếu không case nào sẵn sàng (non-blocking). - Dùng cho timeout:
case <-time.After(5*time.Second).