You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

20 lines
334 B

package threading
type WorkerGroup struct {
job func()
workers int
}
func NewWorkerGroup(job func(), works int) *WorkerGroup {
return &WorkerGroup{
job: job,
workers: works,
}
}
func (wg WorkerGroup) Start() {
group := NewRoutineGroup()
for i := 0; i < wg.workers; i++ {
group.RunSafe(wg.job)
}
group.Wait()
}