Что такое WaitGroup?

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

WaitGroup из пакета sync — это счётчик, который позволяет дождаться завершения группы горутин. wg.Add(n) увеличивает счётчик, wg.Done() уменьшает (обычно через defer), wg.Wait() блокируется пока счётчик не станет нулём. Простой паттерн: запустил 10 горутин, каждая делает defer wg.Done(), в main вызываешь wg.Wait() — и ждёшь пока все закончат. Главное — Add вызывать до запуска горутины, иначе будет рейс.

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

Что такое protobuf?