Junior — Middle
Kaip turėtų būti perduotas kanalas į vykdomą goroutine'ą Go kalboje?
sobes.tech AI
Atsakymas iš AI
Go kanalas paprastai perduodamas kaip funkcijos parametras į gorutinas, siekiant išvengti globalių kintamųjų naudojimo ir pagerinti kodo skaitomumą. Pavyzdžiui:
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)
}
Šis požiūris leidžia aiškiai matyti, kurie kanalai naudojami gorutinoje.