Как сигнализировать о завершении через канал?

Junior
268 просмотров
AFK Offer AI

Самый простой способ — закрыть канал: close(ch). Все горутины которые делают <-ch или range ch получат сигнал. Чтение из закрытого канала возвращает zero value немедленно. Для однократного сигнала используй chan struct{} — он занимает 0 байт. Не отправляй значение для сигнала — его получит только одна горутина. Закрытие работает как broadcast.

Следующий вопрос

Когда использовать new?