Hacker News new | ask | show | jobs
by nasretdinov 1 day ago
Also having stuff like a concurrency limiter (instead of doing weird var limiter chan struct{} and using it as `limiter <- struct{}{}` and `defer <-limiter`) as a library function in `sync` package would be great too.
3 comments

There is actually a way to do this with errgroup provided you can work with func() error signature

https://pkg.go.dev/golang.org/x/sync/errgroup#Group.SetLimit

Error 403. Summarize?
errgroup has a SetLimit function to control the max number of concurrent go routines running at once.
But I guess the issue is that oftentimes, it is more of a distributed system coordination issue?

What use case do you have in mind?