Что такое WaitGroup в Go и зачем это нужно?
Что хотят услышать интервьюеры:
Суть:
Ответ:
sync.WaitGroup ждет завершения группы goroutine.
Пример:
wg.Add(1);
go func(){
defer wg.Done()
}
();
wg.Wait() Типичная ошибка: вызывать Add внутри goroutine и ловить race с Wait.
Как отвечать на собеседовании: Ответ должен показывать, что вы управляете жизненным циклом goroutine, синхронизацией, отменой и нагрузкой, а не просто знаете слово channel.