Разработчик написал consumer с for v := range ch, но producer никогда не вызывает close(ch). Что произойдёт с consumer-горутиной после того, как все значения будут получены?
for v := range ch
close(ch)
Цикл завершится штатно, вернув нулевое значение типа как сигнал об окончании данных
Горутина получит панику, потому что чтение из канала без close недопустимо
Цикл немедленно перейдёт в ветку default, если она объявлена снаружи range
Горутина заблокируется навсегда, ожидая следующего значения от отправителя