1 import { availableParallelism
} from
'poolifier';
3 import type { WorkerOptions
} from
'./WorkerTypes';
5 export const EMPTY_FUNCTION
= Object.freeze(() => {
6 /* This is intentional */
9 export const workerSetVersion
= '1.0.1';
11 export const DEFAULT_ELEMENT_START_DELAY
= 0;
12 export const DEFAULT_WORKER_START_DELAY
= 500;
13 export const DEFAULT_POOL_MIN_SIZE
= Math.floor(availableParallelism() / 2);
14 export const DEFAULT_POOL_MAX_SIZE
= Math.round(availableParallelism() * 1.5);
15 export const DEFAULT_ELEMENTS_PER_WORKER
= 1;
17 export const DEFAULT_WORKER_OPTIONS
: WorkerOptions
= Object.freeze({
18 workerStartDelay
: DEFAULT_WORKER_START_DELAY
,
19 elementStartDelay
: DEFAULT_ELEMENT_START_DELAY
,
20 poolMinSize
: DEFAULT_POOL_MIN_SIZE
,
21 poolMaxSize
: DEFAULT_POOL_MAX_SIZE
,
22 elementsPerWorker
: DEFAULT_ELEMENTS_PER_WORKER
,
25 restartWorkerOnError
: true,