2 * Callback invoked if the worker has received a message.
4 export type MessageHandler
<Worker
> = (this: Worker
, m
: unknown
) => void
7 * Callback invoked if the worker raised an error.
9 export type ErrorHandler
<Worker
> = (this: Worker
, e
: Error) => void
12 * Callback invoked when the worker has started successfully.
14 export type OnlineHandler
<Worker
> = (this: Worker
) => void
17 * Callback invoked when the worker exits successfully.
19 export type ExitHandler
<Worker
> = (this: Worker
, code
: number) => void
22 * Interface that describes the minimum required implementation of listener events for a pool worker.
24 export interface IPoolWorker
{
26 * Register a listener to the message event.
28 * @param event `'message'`.
29 * @param handler The message handler.
31 on(event
: 'message', handler
: MessageHandler
<this>): void
33 * Register a listener to the error event.
35 * @param event `'error'`.
36 * @param handler The error handler.
38 on(event
: 'error', handler
: ErrorHandler
<this>): void
40 * Register a listener to the online event.
42 * @param event `'online'`.
43 * @param handler The online handler.
45 on(event
: 'online', handler
: OnlineHandler
<this>): void
47 * Register a listener to the exit event.
49 * @param event `'exit'`.
50 * @param handler The exit handler.
52 on(event
: 'exit', handler
: ExitHandler
<this>): void
54 * Register a listener to the exit event that will only performed once.
56 * @param event `'exit'`.
57 * @param handler The exit handler.
59 once(event
: 'exit', handler
: ExitHandler
<this>): void