Junior — Middle
Ar galima naudoti Range konstrukciją kuriant kanalus programavimo kalboje?
sobes.tech AI
Atsakymas iš AI
Go kalboje range konstrukcija dažnai naudojama iteracijai per kanalus, leidžianti gauti reikšmes iš kanalo iki jo uždarymo.
Pavyzdys, kaip naudoti range su kanalu:
ch := make(chan int)
func() {
for i := 0; i < 5; i++ {
ch <- i
}
close(ch)
}()
for val := range ch {
fmt.Println(val)
}
Čia range naudojamas skaityti iš kanalo ch iki jo uždarymo. Taip, range konstrukcija neužima kanalų, o leidžia patogiai iš jų skaityti.