- https://go-workshop-conference.connpass.com/event/375456/ に参加
- https://github.com/nnnkkk7/go-concurrency-workshop?tab=readme-ov-file
sync.WaitGroupを使用してgorutineの終了を待つ- Go 1.25からは
WaitGroup.Goを使うのが便利- https://pkg.go.dev/sync#WaitGroup.Go
WaitGroup.AddとWaitGroup.Doneの書き忘れを防ぐgo func()の記述も不要で可読性も上がる
- Go 1.25からは
var wg sync.WaitGroup
// AddとDone
wg.Add(1)
go func() {
defer wg.Done()
processFile(f)
}()
// Go
wg.Go(func() {
processFile(f)
})runtime.GOMAXPROCS()の引数が0の場合、runtime.NumCPU()の値になる