Junior — Middle
Оё иҷозат аст, ки маълумотҳоро ба канали, ки барои хондан ва навиштан кушода нест, фиристод?
sobes.tech AI
Ҷавоб аз AI
У Go, немогуће је слати податке у канал који није отворен за запис. Ако је канал затворен (затвара се помоћу close(channel)), покушај слања у њега изазваће панику (runtime panic).
Међутим, читање из затвореног канала је могуће — при томе, читање ће вратити нулеву вредност типа канала и флаг који указује да је канал затворен.
Пример:
ch := make(chan int)
close(ch)
// Читање из затвореног канала је безбедно
value, ok := <-ch // ok == false
// Слање у затворени канал изазваће панику
ch <- 1 // panic: send on closed channel
Стога, податке је могуће слати само у отворене канале.