Versions in this module Expand all Collapse all v3 v3.1.0 Jun 11, 2019 v3.0.0 Jun 10, 2019 Changes in this version + type ErrNoAvaialableWorkers struct + Job Job + func (e ErrNoAvaialableWorkers) Error() string + func (e ErrNoAvaialableWorkers) GetJob() Job + type IPool interface + PutWorkerInTheQueue func(worker IWorker) + QueueJob func(job Job) + Shutdown func() + Start func() + Wait func() + type IWorker interface + DoJob func(job Job) + GetID func() int + RejoinWorkerPool func() + type Job interface + Work func(workerID int) + type JobError interface + Error func() string + GetJob func() Job + type Pool struct + ErrorQueue chan JobError + func NewPool(config PoolConfig) *Pool + func (p *Pool) PutWorkerInTheQueue(worker IWorker) + func (p *Pool) QueueJob(job Job) + func (p *Pool) Shutdown() + func (p *Pool) Start() + func (p *Pool) Wait() + type PoolConfig struct + MaxJobQueue int + MaxWorkerWaitTime time.Duration + MaxWorkers int + type Worker struct + Pool IPool + WaitGroup *sync.WaitGroup + WorkerID int + func (w *Worker) DoJob(job Job) + func (w *Worker) GetID() int + func (w *Worker) RejoinWorkerPool() Other modules containing this package github.com/app-nerds/kit/v4 github.com/app-nerds/kit/v5 github.com/app-nerds/kit/v6