Junior — Middle
Как трябва да се предаде канал към работеща горутина в Go?
sobes.tech AI
Отговор от AI
Обикновено канал в Go се предава като параметър на функция към горутината, за да се избегне използването на глобални променливи и да се подобри четливостта на кода. Например:
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)
}
Този подход позволява ясно да се види кои канали се използват в горутината.