Junior — Middle
Kako završiti rad sa kanalom u programu?
sobes.tech АИ
Одговор од АИ
U Go jeziku, za završetak rada sa kanalom koristi se funkcija close(). Zatvaranje kanala signalizira primaocima da više neće biti poslata nova vrednost. Nakon zatvaranja kanala, pokušaj slanja u njega izazvaće paniku, ali čitanje iz zatvorenog kanala je moguće — vratiće nultu vrednost i false kao drugi povratni parametar.
Primer:
ch := make(chan int)
ngo func() {
ch <- 42
close(ch) // Zatvaramo kanal nakon slanja
}()
for val := range ch {
fmt.Println(val) // Ispisaće 42
}
Dakle, da biste završili rad sa kanalom, potrebno je pozvati close(channel).