github.com/sherifabdlnaby/semaphore (go): Package semaphore provides a weighted semaphore implementation.  Example_workerPool demonstrates how to use a semaphore to limit the number of goroutines working on parallel tasks.  This use of a semaphore mimics a typical “worker pool” pattern, but without the need to explicitly shut down idle workers when the work is done.
Keywords: go|resizable|semaphore|semaphore-pattern