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

Что будет, если читать из закрытого канала?

Компании, где спрашивали
МТСМТС

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

sobes.tech AI

Если читать из закрытого канала в Go, то операция чтения не блокируется и возвращает нулевое значение типа канала вместе с признаком, что канал закрыт. Это позволяет безопасно завершать горутины, которые читают из канала, не опасаясь блокировок.

Пример:

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

v, ok := <-ch // ok == false, v == 0 (нулевое значение int)

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