X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fpools%2Fabstract-pool.ts;h=b95d16b4b80259b5cb89d0e3c7717d31767e4d4c;hb=c319c66bad0611acf6087950a1f8a20f8124167b;hp=3f6e7034f4c6994d4177038cd5c89bf1f3b26636;hpb=3528c992d348d18ae41e803ac202e1e15ec31589;p=poolifier.git diff --git a/src/pools/abstract-pool.ts b/src/pools/abstract-pool.ts index 3f6e7034..b95d16b4 100644 --- a/src/pools/abstract-pool.ts +++ b/src/pools/abstract-pool.ts @@ -6,10 +6,14 @@ import { median } from '../utils' import { KillBehaviors, isKillBehavior } from '../worker/worker-options' -import { PoolEvents, type PoolOptions, type TasksQueueOptions } from './pool' +import { + PoolEvents, + type IPool, + type PoolOptions, + type TasksQueueOptions, + PoolType +} from './pool' import { PoolEmitter } from './pool' -import type { IPoolInternal } from './pool-internal' -import { PoolType } from './pool-internal' import type { IWorker, Task, TasksUsage, WorkerNode } from './worker' import { WorkerChoiceStrategies, @@ -29,7 +33,7 @@ export abstract class AbstractPool< Worker extends IWorker, Data = unknown, Response = unknown -> implements IPoolInternal { +> implements IPool { /** @inheritDoc */ public readonly workerNodes: Array> = [] @@ -223,11 +227,19 @@ export abstract class AbstractPool< ) } - /** @inheritDoc */ - public abstract get full (): boolean + /** + * Whether the pool is full or not. + * + * The pool filling boolean status. + */ + protected abstract get full (): boolean - /** @inheritDoc */ - public abstract get busy (): boolean + /** + * Whether the pool is busy or not. + * + * The pool busyness boolean status. + */ + protected abstract get busy (): boolean protected internalBusy (): boolean { return this.findFreeWorkerNodeKey() === -1