Что такое done channel pattern?

Middle
199 просмотров
AFK Offer AI

Done channel — канал для сигнализации о завершении. Горутина слушает done канал через select и завершается когда он закрывается. Создатель горутины закрывает done когда хочет остановить работу. close(done) разблокирует все горутины которые на нём ждут — в отличие от отправки значения, которое получит только одна. Это предшественник context.WithCancel, который делает то же самое элегантнее.

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

Как принимать технические решения?