Sobes.tech
Назад к вопросам
Middle+
5

Что произойдёт, если читать из закрытого канала в Go?

Компании, где спрашивали
Magnit Tech

Ответ от нейросети

sobes.tech AI

Если читать из закрытого канала в Go, то операция чтения не блокируется и возвращается нулевое значение типа канала и флаг false, который указывает, что канал закрыт и больше в него не будет отправлено значений.

Пример:

ch := make(chan int)
close(ch)

v, ok := <-ch
fmt.Println(v, ok) // Выведет: 0 false

Таким образом, чтение из закрытого канала безопасно и позволяет определить, что канал закрыт, не блокируясь.