Back to questions
Senior
9
Что происходит при записи в неинициализированный (nil) канал?
Companies where asked
I-teco
Answer from AI
sobes.tech AI
В Go запись в неинициализированный (nil) канал приводит к блокировке горутины навсегда, так как nil-канал не готов принимать или отдавать данные.
Пример:
var ch chan int // ch == nil
func main() {
ch <- 1 // блокируется навсегда, так как канал nil
}
Это поведение используется иногда для динамического включения/отключения каналов в select, поскольку операции с nil-каналом никогда не выполняются и блокируют горутину.