code: func New(maxWorkers, totalJobs int) *Throttler {
  	if maxWorkers < 1 {
  		panic("maxWorkers has to be at least 1")
  	}
  	return &Throttler{
  		maxWorkers: int32(maxWorkers),
  		batchSize:  1,
  		totalJobs:  int32(totalJobs),
  		doneChan:   make(chan struct{}, totalJobs),
  		errsMutex:  &sync.Mutex{},
  	}
  }
docs: // New returns a Throttler that will govern the max number of workers and will
  // work with the total number of jobs. It panics if maxWorkers < 1.