Скорее всего 3, 3, 3 (до Go 1.22). Та же проблема что с горутинами в цикле — closure захватывает i по ссылке. wg.Wait() гарантирует что все горутины завершились, но не фиксит проблему с переменной. Фикс: go func(n int) { defer wg.Done(); fmt.Println(n) }(i). Или с Go 1.22 переменная цикла уже per-iteration.
Что выведет: var wg sync.WaitGroup; for i := 0; i < 3; i++ { wg.Add(1); go func() { defer wg.Done(); fmt.Println(i) }() }; wg.Wait()?
Middle
142 просмотровAFK Offer AI
Что такое circuit breaker state machine?