Merge branch 'master' of github.com:poolifier/poolifier
[poolifier.git] / src / pools / pool.ts
index 8aae69d463323557197da4a749072989060c0b6a..7c6f6769212c45513453af5d3b373f2b752f4c62 100644 (file)
@@ -72,12 +72,15 @@ export interface PoolInfo {
   worker: WorkerType
   minSize: number
   maxSize: number
+  utilization: number
   workerNodes: number
   idleWorkerNodes: number
   busyWorkerNodes: number
-  runningTasks: number
+  executedTasks: number
+  executingTasks: number
   queuedTasks: number
   maxQueuedTasks: number
+  failedTasks: number
 }
 
 /**
@@ -150,8 +153,8 @@ export interface PoolOptions<Worker extends IWorker> {
  * Contract definition for a poolifier pool.
  *
  * @typeParam Worker - Type of worker which manages this pool.
- * @typeParam Data - Type of data sent to the worker. This can only be serializable data.
- * @typeParam Response - Type of execution response. This can only be serializable data.
+ * @typeParam Data - Type of data sent to the worker. This can only be structured-cloneable data.
+ * @typeParam Response - Type of execution response. This can only be structured-cloneable data.
  */
 export interface IPool<
   Worker extends IWorker,
@@ -180,13 +183,13 @@ export interface IPool<
   /**
    * Executes the specified function in the worker constructor with the task data input parameter.
    *
-   * @param data - The task input data for the specified worker function. This can only be serializable data.
+   * @param data - The task input data for the specified worker function. This can only be structured-cloneable data.
    * @param name - The name of the worker function to execute. If not specified, the default worker function will be executed.
    * @returns Promise that will be fulfilled when the task is completed.
    */
   execute: (data?: Data, name?: string) => Promise<Response>
   /**
-   * Shutdowns every current worker in this pool.
+   * Terminate every current worker in this pool.
    */
   destroy: () => Promise<void>
   /**