|almost 4 years ago
|about 3 years ago
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
We haven't tracked posts mentioning semaphore yet.
Tracking mentions began in Dec 2020.
Implementing Worker Pools in Go - Go Concurrency
4 projects | /r/golang | 9 Jul 2021
This is a good starting point. As a next step you could introduce some already existing library, for example these ones: https://github.com/benmanns/goworker https://github.com/vardius/worker-pool https://github.com/xxjwxc/gowp
What are some alternatives?
ants - 🐜🐜🐜 ants is a high-performance and low-cost goroutine pool in Go./ ants 是一个高性能且低损耗的 goroutine 池。
pond - 🔘 Minimalistic and High-performance goroutine worker pool written in Go
semaphore go - Fast resizable golang semaphore primitive
go-waitgroup - A sync.WaitGroup with error handling and concurrency control
goworker - goworker is a Go-based background worker that runs 10 to 100,000* times faster than Ruby-based workers.
neilotoole/errgroup - errgroup with goroutine worker limits
tunny - A goroutine pool for Go
grpool - Lightweight Goroutine pool
Goflow - Simply way to control goroutines execution order based on dependencies
pool - :speedboat: a limited consumer goroutine or unlimited goroutine pool for easier goroutine handling and cancellation