select permite que uma goroutine aguarde múltiplas operações em canais simultaneamente, prosseguindo com aquela que estiver pronta primeiro. É como um switch mas para canais — essencial para coordenar operações concorrentes, timeouts e cancelamento.
select básico — aguardar múltiplos canais
{
msg1 := <-ch1:
fmt.Println(, msg1)
msg2 := <-ch2:
fmt.Println(, msg2)
ch3 <- :
fmt.Println()
}
