Commit | Line | Data |
---|---|---|
fb41d7f7 | 1 | import type { KillBehavior } from '../utility-types' |
2 | ||
4c35177b | 3 | /** |
4 | * Kill behavior enumeration | |
5 | */ | |
6 | export const killBehaviorEnumeration = Object.freeze({ | |
7 | SOFT: 'SOFT', | |
8 | HARD: 'HARD' | |
9 | }) | |
10 | ||
729c563d S |
11 | /** |
12 | * Options for workers. | |
13 | */ | |
325f50bc S |
14 | export interface WorkerOptions { |
15 | /** | |
729c563d | 16 | * Maximum waiting time in milliseconds for tasks. |
729c563d | 17 | * After this time, newly created workers will be terminated. |
4c35177b | 18 | * The last active time of your worker unit will be updated when a task is submitted to a worker or when a worker terminate a task. |
fb41d7f7 | 19 | * If killBehavior is set to HARD this value represents also the timeout for the tasks that you submit to the pool, |
20 | * when this timeout expires your tasks is interrupted and the worker is killed if is not part of the minimum size of the pool. | |
21 | * If killBehavior is set to SOFT your tasks have no timeout and your workers will not be terminated until your task is | |
325f50bc S |
22 | * |
23 | * @default 60.000 ms | |
24 | */ | |
25 | maxInactiveTime?: number | |
26 | /** | |
729c563d | 27 | * Whether your worker will perform asynchronous or not. |
325f50bc S |
28 | * |
29 | * @default false | |
30 | */ | |
31 | async?: boolean | |
4c35177b | 32 | /** |
fb41d7f7 | 33 | * killBehavior dictates if your async unit ( worker/process ) will be deleted in case that a task is active on it. |
34 | * SOFT: If current time - last active time is greater than maxInactiveTime option, but a task is still running then the worker will be not deleted. | |
35 | * HARD: If last active time is greater than maxInactiveTime option, but a task is still running then the worker will be deleted. | |
4c35177b | 36 | * This option only apply to the newly created workers. |
37 | * | |
fb41d7f7 | 38 | * @default SOFT |
4c35177b | 39 | */ |
fb41d7f7 | 40 | killBehavior?: KillBehavior |
325f50bc | 41 | } |