sync.WaitGroup 相当をチャネルのみで記述可能?
一般には sync.WaitGroup
で実現される並行処理の完了待機を、チャネル( chan
)だけをつかって記述することはできますか?
var wg sync.WaitGroup
for i := 0; i < 10; i++ {
wg.Add(1)
go func(i int) {
// 並行処理[i]
wg.Done()
}(i)
}
wg.Wait()
一般には sync.WaitGroup
で実現される並行処理の完了待機を、チャネル( chan
)だけをつかって記述することはできますか?
var wg sync.WaitGroup
for i := 0; i < 10; i++ {
wg.Add(1)
go func(i int) {
// 並行処理[i]
wg.Done()
}(i)
}
wg.Wait()