Junior — Middle
Como deve passar um canal para uma goroutine em execução em Go?
sobes.tech IA
Resposta da IA
O canal em Go geralmente é passado para uma goroutine como um parâmetro de função para evitar o uso de variáveis globais e melhorar a legibilidade do código. Por exemplo:
func worker(ch chan int) {
for val := range ch {
fmt.Println(val)
}
}
func main() {
ch := make(chan int)
go worker(ch)
ch <- 1
ch <- 2
close(ch)
}
Essa abordagem permite ver claramente quais canais são usados na goroutine.