repositories
/
poolifier.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
refactor: more object destructuration cleanup in examples
[poolifier.git]
/
src
/
pools
/
pool.ts
diff --git
a/src/pools/pool.ts
b/src/pools/pool.ts
index 1a05f633250adb8e88c72a63cda565c3265205bc..f4d9c7bba67d18d3c48a212159bf606fe409cfcf 100644
(file)
--- a/
src/pools/pool.ts
+++ b/
src/pools/pool.ts
@@
-42,9
+42,10
@@
export class PoolEmitter extends EventEmitter {}
* Enumeration of pool events.
*/
export const PoolEvents = Object.freeze({
* Enumeration of pool events.
*/
export const PoolEvents = Object.freeze({
- full: 'full',
ready: 'ready',
busy: 'busy',
ready: 'ready',
busy: 'busy',
+ full: 'full',
+ destroy: 'destroy',
error: 'error',
taskError: 'taskError'
} as const)
error: 'error',
taskError: 'taskError'
} as const)
@@
-110,6
+111,10
@@
export interface TasksQueueOptions {
* @typeParam Worker - Type of worker.
*/
export interface PoolOptions<Worker extends IWorker> {
* @typeParam Worker - Type of worker.
*/
export interface PoolOptions<Worker extends IWorker> {
+ /**
+ * A function that will listen for online event on each worker.
+ */
+ onlineHandler?: OnlineHandler<Worker>
/**
* A function that will listen for message event on each worker.
*/
/**
* A function that will listen for message event on each worker.
*/
@@
-118,10
+123,6
@@
export interface PoolOptions<Worker extends IWorker> {
* A function that will listen for error event on each worker.
*/
errorHandler?: ErrorHandler<Worker>
* A function that will listen for error event on each worker.
*/
errorHandler?: ErrorHandler<Worker>
- /**
- * A function that will listen for online event on each worker.
- */
- onlineHandler?: OnlineHandler<Worker>
/**
* A function that will listen for exit event on each worker.
*/
/**
* A function that will listen for exit event on each worker.
*/
@@
-183,9
+184,10
@@
export interface IPool<
*
* Events that can currently be listened to:
*
*
* Events that can currently be listened to:
*
- * - `'full'`: Emitted when the pool is dynamic and the number of workers created has reached the maximum size expected.
* - `'ready'`: Emitted when the number of workers created in the pool has reached the minimum size expected and are ready.
* - `'busy'`: Emitted when the number of workers created in the pool has reached the maximum size expected and are executing at least one task.
* - `'ready'`: Emitted when the number of workers created in the pool has reached the minimum size expected and are ready.
* - `'busy'`: Emitted when the number of workers created in the pool has reached the maximum size expected and are executing at least one task.
+ * - `'full'`: Emitted when the pool is dynamic and the number of workers created has reached the maximum size expected.
+ * - '`destroy`': Emitted when the pool is destroyed.
* - `'error'`: Emitted when an uncaught error occurs.
* - `'taskError'`: Emitted when an error occurs while executing a task.
*/
* - `'error'`: Emitted when an uncaught error occurs.
* - `'taskError'`: Emitted when an error occurs while executing a task.
*/
@@
-207,6
+209,12
@@
export interface IPool<
* Terminates all workers in this pool.
*/
readonly destroy: () => Promise<void>
* Terminates all workers in this pool.
*/
readonly destroy: () => Promise<void>
+ /**
+ * Lists the names of task function available in this pool.
+ *
+ * @returns The names of task function available in this pool.
+ */
+ readonly listTaskFunctions: () => string[]
/**
* Sets the worker choice strategy in this pool.
*
/**
* Sets the worker choice strategy in this pool.
*