github.com/lrstanley/go-sempool (go): Package sempool provides a very lightweight goroutine work pool  Here is an example, which creates no more than 5 go-routines at a time. Once the as each go-routine finishes, a slot is opened, which is then occupied by the next available piece of work:
Keywords: concurrency|go|golang