WaitGroup используется для синхронизации работы одной или нескольких горутин. Позволяет основной горутине дождаться завершения выполнения других созданных горутин. Состоит из счетчика, который увеличивается при создании горутины и уменьшается при ее завершении.
Основные методы:
Add(delta int): Увеличивает или уменьшает счетчик горутин.Done(): Уменьшает счетчик на 1. Обычно вызывается в конце горутины (часто с использованием defer).Wait(): Блокирует выполнение до тех пор, пока счетчик не станет равным нулю.Пример использования:
go