Merge branch 'master' into feature/task-functions
authorJérôme Benoit <jerome.benoit@sap.com>
Sun, 17 Sep 2023 20:47:48 +0000 (22:47 +0200)
committerGitHub <noreply@github.com>
Sun, 17 Sep 2023 20:47:48 +0000 (22:47 +0200)
1  2 
docs/api.md

diff --combined docs/api.md
index d2cc2ba7747c31f7bdf0b0efbc204ae29919639d,df7d1ce5c1fa63def41ccbedbd1522f19c350aca..15760676c1f23e38518a5f19cece8f03308f5b05
@@@ -8,7 -8,7 +8,7 @@@
    - [`pool.execute(data, name, transferList)`](#poolexecutedata-name-transferlist)
    - [`pool.start()`](#poolstart)
    - [`pool.destroy()`](#pooldestroy)
 -  - [`pool.listTaskFunctions()`](#poollisttaskfunctions)
 +  - [`pool.listTaskFunctionNames()`](#poollisttaskfunctionnames)
    - [`PoolOptions`](#pooloptions)
      - [`ThreadPoolOptions extends PoolOptions`](#threadpooloptions-extends-pooloptions)
      - [`ClusterPoolOptions extends PoolOptions`](#clusterpooloptions-extends-pooloptions)
      - [`YourWorker.hasTaskFunction(name)`](#yourworkerhastaskfunctionname)
      - [`YourWorker.addTaskFunction(name, fn)`](#yourworkeraddtaskfunctionname-fn)
      - [`YourWorker.removeTaskFunction(name)`](#yourworkerremovetaskfunctionname)
 -    - [`YourWorker.listTaskFunctions()`](#yourworkerlisttaskfunctions)
 +    - [`YourWorker.listTaskFunctionNames()`](#yourworkerlisttaskfunctionnames)
      - [`YourWorker.setDefaultTaskFunction(name)`](#yourworkersetdefaulttaskfunctionname)
  
  ## Pool
  
  ### `pool = new FixedThreadPool/FixedClusterPool(numberOfThreads/numberOfWorkers, filePath, opts)`
  
- `numberOfThreads/numberOfWorkers` (mandatory) Number of workers for this pool  
- `filePath` (mandatory) Path to a file with a worker implementation  
- `opts` (optional) An object with the pool options properties described below
+ `numberOfThreads/numberOfWorkers` (mandatory) Number of workers for this pool.  
+ `filePath` (mandatory) Path to a file with a worker implementation.  
+ `opts` (optional) An object with the pool options properties described below.
  
  ### `pool = new DynamicThreadPool/DynamicClusterPool(min, max, filePath, opts)`
  
- `min` (mandatory) Same as _FixedThreadPool_/_FixedClusterPool_ numberOfThreads/numberOfWorkers, this number of workers will be always active  
+ `min` (mandatory) Same as _FixedThreadPool_/_FixedClusterPool_ numberOfThreads/numberOfWorkers, this number of workers will be always active.  
  `max` (mandatory) Max number of workers that this pool can contain, the newly created workers will die after a threshold (default is 1 minute, you can override it in your worker implementation).  
- `filePath` (mandatory) Path to a file with a worker implementation  
- `opts` (optional) An object with the pool options properties described below
+ `filePath` (mandatory) Path to a file with a worker implementation.  
+ `opts` (optional) An object with the pool options properties described below.
  
  ### `pool.execute(data, name, transferList)`
  
- `data` (optional) An object that you want to pass to your worker implementation  
+ `data` (optional) An object that you want to pass to your worker implementation.  
  `name` (optional) A string with the task function name that you want to execute on the worker. Default: `'default'`  
  `transferList` (optional) An array of transferable objects that you want to transfer to your [worker_threads](https://nodejs.org/api/worker_threads.html) worker implementation
  
@@@ -51,13 -51,7 +51,13 @@@ This method is available on both pool i
  
  This method is available on both pool implementations and will call the terminate method on each worker.
  
 -### `pool.listTaskFunctions()`
 +### `pool.hasTaskFunction(name)`
 +
 +`name` (mandatory) The task function name
 +
 +This method is available on both pool implementations and returns a boolean.
 +
 +### `pool.listTaskFunctionNames()`
  
  This method is available on both pool implementations and returns an array of the task function names.
  
@@@ -132,7 -126,7 +132,7 @@@ An object with these properties
  
  ### `class YourWorker extends ThreadWorker/ClusterWorker`
  
- `taskFunctions` (mandatory) The task function or task functions object `{ name_1: fn_1, ..., name_n: fn_n }` that you want to execute on the worker  
+ `taskFunctions` (mandatory) The task function or task functions object `{ name_1: fn_1, ..., name_n: fn_n }` that you want to execute on the worker.  
  `opts` (optional) An object with these properties:
  
  - `killBehavior` (optional) - Dictates if your worker will be deleted in case a task is active on it.  
  
  #### `YourWorker.hasTaskFunction(name)`
  
- `name` (mandatory) The task function name
+ `name` (mandatory) The task function name.
  
 -This method is available on both worker implementations and returns a boolean.
 +This method is available on both worker implementations and returns `{ status: boolean, error?: Error }`.
  
  #### `YourWorker.addTaskFunction(name, fn)`
  
- `name` (mandatory) The task function name  
- `fn` (mandatory) The task function
+ `name` (mandatory) The task function name.  
+ `fn` (mandatory) The task function.
  
 -This method is available on both worker implementations and returns a boolean.
 +This method is available on both worker implementations and returns `{ status: boolean, error?: Error }`.
  
  #### `YourWorker.removeTaskFunction(name)`
  
- `name` (mandatory) The task function name
+ `name` (mandatory) The task function name.
  
 -This method is available on both worker implementations and returns a boolean.
 +This method is available on both worker implementations and returns `{ status: boolean, error?: Error }`.
  
 -#### `YourWorker.listTaskFunctions()`
 +#### `YourWorker.listTaskFunctionNames()`
  
  This method is available on both worker implementations and returns an array of the task function names.
  
  #### `YourWorker.setDefaultTaskFunction(name)`
  
- `name` (mandatory) The task function name
+ `name` (mandatory) The task function name.
  
 -This method is available on both worker implementations and returns a boolean.
 +This method is available on both worker implementations and returns `{ status: boolean, error?: Error }`.