Comment by nasretdinov
3 hours 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.
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?
there's https://pkg.go.dev/golang.org/x/time/rate ...
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?