Hacker News new | ask | show | jobs
by nasretdinov 1 day ago
Well, better late than never. Stuff like sets or a typed heap is long overdue. Maybe they'll even add iterator API for database/sql results this decade too (something like my pull request for sqlx https://github.com/jmoiron/sqlx/pull/990 but maybe more polished)
2 comments

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?
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?

You’d have a better chance of getting your PR accepted into https://github.com/Vinovest/sqlx