dynamicworkerspool

package module
v0.0.0-...-88e151d Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 12, 2022 License: MIT Imports: 4 Imported by: 0

README

dynamic_workers_pool

Dynamic workers pool

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DynamicWorkersPool

type DynamicWorkersPool struct {
	// contains filtered or unexported fields
}

DynamicWorkersPool пул воркеров с возможностью на ходу менять количество работающих воркеров

func NewDynamicWorkersPool

func NewDynamicWorkersPool(workersNum, taskPoolSize uint) (*DynamicWorkersPool, error)

NewDynamicWorkersPool создает пул воркеров

func (*DynamicWorkersPool) Close

func (dwp *DynamicWorkersPool) Close() error

Close - закрывает пул и ждет пока все воркеры доработают После закрытия пул не пригоден для работы, при попытке добавить задание упадет с паникой

func (*DynamicWorkersPool) PushTask

func (dwp *DynamicWorkersPool) PushTask(ctx context.Context, task func()) error

PushTask - добавляет задачу в очередь. PushTask блокирующая операция, и стоит использовать context.WithCancel/context.WithTimeout

func (*DynamicWorkersPool) ResetWorkersNum

func (dwp *DynamicWorkersPool) ResetWorkersNum(workersNum uint) error

ResetWorkersNum переопределение числа воркеров

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL