Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
ants
πππ ants is a high-performance and low-cost goroutine pool in Go./ ants ζ―δΈδΈͺι«ζ§θ½δΈδ½ζθη goroutine ζ± γ
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
Great project. It seems like channels are just the wrong tool for a lot of concurrency problems. More powerful than needed and easy to get wrong. Lots of nice ways to make go concurrency safer.
The problem that bothers me (and isnt in Conc), is how hard it is to run different things in the background and gather the results in different ways. Particularly when you start doing those things conditionally and reusing results.
Something like go-future helps. https://github.com/stephennancekivell/go-future
I do like idea of waitgroup on steroids, I might steal it for my generic library.
* [1] https://github.com/XANi/goneric/blob/master/worker.go#L92
I like this library! I recently created a library that helps just with the problem of recovering goroutine panics and errors: https://github.com/gregwebs/go-recovery
conc seem similar to ant lib (https://github.com/panjf2000/ants). Is there any considerable difference between them?