chore: generate documentation
[poolifier.git] / docs / classes / AbstractPool.html
CommitLineData
3bd6a82e 1<!DOCTYPE html><html class="default" lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>AbstractPool | poolifier</title><meta name="description" content="Documentation for poolifier"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/search.js" id="tsd-search-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os"</script><header class="tsd-page-toolbar">
6c525543 2<div class="tsd-toolbar-contents container">
3<div class="table-cell" id="tsd-search" data-base="..">
4<div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M15.7824 13.833L12.6666 10.7177C12.5259 10.5771 12.3353 10.499 12.1353 10.499H11.6259C12.4884 9.39596 13.001 8.00859 13.001 6.49937C13.001 2.90909 10.0914 0 6.50048 0C2.90959 0 0 2.90909 0 6.49937C0 10.0896 2.90959 12.9987 6.50048 12.9987C8.00996 12.9987 9.39756 12.4863 10.5008 11.6239V12.1332C10.5008 12.3332 10.5789 12.5238 10.7195 12.6644L13.8354 15.7797C14.1292 16.0734 14.6042 16.0734 14.8948 15.7797L15.7793 14.8954C16.0731 14.6017 16.0731 14.1267 15.7824 13.833ZM6.50048 10.499C4.29094 10.499 2.50018 8.71165 2.50018 6.49937C2.50018 4.29021 4.28781 2.49976 6.50048 2.49976C8.71001 2.49976 10.5008 4.28708 10.5008 6.49937C10.5008 8.70852 8.71314 10.499 6.50048 10.499Z" fill="var(--color-text)"></path></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div>
5<div class="field">
6<div id="tsd-toolbar-links"></div></div>
7<ul class="results">
8<li class="state loading">Preparing search index...</li>
9<li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">poolifier</a></div>
10<div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><rect x="1" y="3" width="14" height="2" fill="var(--color-text)"></rect><rect x="1" y="7" width="14" height="2" fill="var(--color-text)"></rect><rect x="1" y="11" width="14" height="2" fill="var(--color-text)"></rect></svg></a></div></div></header>
11<div class="container container-main">
12<div class="col-content">
13<div class="tsd-page-title">
14<ul class="tsd-breadcrumb">
15<li><a href="../index.html">poolifier</a></li>
16<li><a href="AbstractPool.html">AbstractPool</a></li></ul>
17<h1>Class AbstractPool&lt;Worker, Data, Response&gt;<code class="tsd-tag ts-flagAbstract">Abstract</code> </h1></div>
18<section class="tsd-panel tsd-comment">
19<div class="tsd-comment tsd-typography"><p>Base class that implements some shared logic for all poolifier pools.</p>
20</div></section>
fab6d3b5 21<section class="tsd-panel">
6c525543 22<h4>Type Parameters</h4>
fab6d3b5 23<ul class="tsd-type-parameter-list">
6c525543 24<li>
8d1797ad 25<h4><span class="tsd-kind-type-parameter">Worker</span><span class="tsd-signature-symbol"> extends </span><a href="../interfaces/IWorker.html" class="tsd-signature-type tsd-kind-interface">IWorker</a></h4>
6c525543 26<div class="tsd-comment tsd-typography"><p>Type of worker which manages this pool.</p>
27</div></li>
28<li>
3bd6a82e 29<h4><span class="tsd-kind-type-parameter">Data</span> = <span class="tsd-signature-type">unknown</span></h4>
6c525543 30<div class="tsd-comment tsd-typography"><p>Type of data sent to the worker. This can only be serializable data.</p>
31</div></li>
32<li>
3bd6a82e 33<h4><span class="tsd-kind-type-parameter">Response</span> = <span class="tsd-signature-type">unknown</span></h4>
e39450c0 34<div class="tsd-comment tsd-typography"><p>Type of execution response. This can only be serializable data.</p>
6c525543 35</div></li></ul></section>
36<section class="tsd-panel tsd-hierarchy">
37<h4>Hierarchy</h4>
38<ul class="tsd-hierarchy">
39<li><span class="target">AbstractPool</span>
40<ul class="tsd-hierarchy">
8d1797ad 41<li><a href="FixedClusterPool.html" class="tsd-signature-type tsd-kind-class">FixedClusterPool</a></li>
42<li><a href="FixedThreadPool.html" class="tsd-signature-type tsd-kind-class">FixedThreadPool</a></li></ul></li></ul></section>
6c525543 43<section class="tsd-panel">
44<h4>Implements</h4>
45<ul class="tsd-hierarchy">
8d1797ad 46<li><a href="../interfaces/IPool.html" class="tsd-signature-type tsd-kind-interface">IPool</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Worker</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span></li></ul></section><aside class="tsd-sources">
6c525543 47<ul>
ccb7d1a7 48<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L35">src/pools/abstract-pool.ts:35</a></li></ul></aside>
6c525543 49<section class="tsd-panel-group tsd-index-group">
50<section class="tsd-panel tsd-index-panel">
51<details class="tsd-index-content tsd-index-accordion" open><summary class="tsd-accordion-summary tsd-index-summary">
52<h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex=0><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M1.5 5.50969L8 11.6609L14.5 5.50969L12.5466 3.66086L8 7.96494L3.45341 3.66086L1.5 5.50969Z" fill="var(--color-text)"></path></svg> Index</h5></summary>
53<div class="tsd-accordion-details">
54<section class="tsd-index-section">
55<h3 class="tsd-index-heading">Constructors</h3>
3bd6a82e 56<div class="tsd-index-list"><a href="AbstractPool.html#constructor" class="tsd-index-link"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><rect fill="var(--color-icon-background)" stroke="#4D7FFF" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12" id="icon-512-path"></rect><path d="M11.898 16.1201C11.098 16.1201 10.466 15.8961 10.002 15.4481C9.53803 15.0001 9.30603 14.3841 9.30603 13.6001V9.64012C9.30603 8.85612 9.53803 8.24012 10.002 7.79212C10.466 7.34412 11.098 7.12012 11.898 7.12012C12.682 7.12012 13.306 7.34812 13.77 7.80412C14.234 8.25212 14.466 8.86412 14.466 9.64012H13.386C13.386 9.14412 13.254 8.76412 12.99 8.50012C12.734 8.22812 12.37 8.09212 11.898 8.09212C11.426 8.09212 11.054 8.22412 10.782 8.48812C10.518 8.75212 10.386 9.13212 10.386 9.62812V13.6001C10.386 14.0961 10.518 14.4801 10.782 14.7521C11.054 15.0161 11.426 15.1481 11.898 15.1481C12.37 15.1481 12.734 15.0161 12.99 14.7521C13.254 14.4801 13.386 14.0961 13.386 13.6001H14.466C14.466 14.3761 14.234 14.9921 13.77 15.4481C13.306 15.8961 12.682 16.1201 11.898 16.1201Z" fill="var(--color-text)" id="icon-512-text"></path></svg><span>constructor</span></a>
6c525543 57</div></section>
58<section class="tsd-index-section">
59<h3 class="tsd-index-heading">Properties</h3>
3bd6a82e 60<div class="tsd-index-list"><a href="AbstractPool.html#emitter" class="tsd-index-link"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><rect fill="var(--color-icon-background)" stroke="#FF984D" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12" id="icon-1024-path"></rect><path d="M9.354 16V7.24H12.174C12.99 7.24 13.638 7.476 14.118 7.948C14.606 8.412 14.85 9.036 14.85 9.82C14.85 10.604 14.606 11.232 14.118 11.704C13.638 12.168 12.99 12.4 12.174 12.4H10.434V16H9.354ZM10.434 11.428H12.174C12.646 11.428 13.022 11.284 13.302 10.996C13.59 10.7 13.734 10.308 13.734 9.82C13.734 9.324 13.59 8.932 13.302 8.644C13.022 8.356 12.646 8.212 12.174 8.212H10.434V11.428Z" fill="var(--color-text)" id="icon-1024-text"></path></svg><span>emitter?</span></a>
61<a href="AbstractPool.html#filePath" class="tsd-index-link"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-1024-path"></use><use href="#icon-1024-text"></use></svg><span>file<wbr/>Path</span></a>
62<a href="AbstractPool.html#numberOfWorkers" class="tsd-index-link"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-1024-path"></use><use href="#icon-1024-text"></use></svg><span>number<wbr/>Of<wbr/>Workers</span></a>
63<a href="AbstractPool.html#opts" class="tsd-index-link"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-1024-path"></use><use href="#icon-1024-text"></use></svg><span>opts</span></a>
64<a href="AbstractPool.html#promiseResponseMap" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-1024-path"></use><use href="#icon-1024-text"></use></svg><span>promise<wbr/>Response<wbr/>Map</span></a>
65<a href="AbstractPool.html#workerChoiceStrategyContext" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-1024-path"></use><use href="#icon-1024-text"></use></svg><span>worker<wbr/>Choice<wbr/>Strategy<wbr/>Context</span></a>
66<a href="AbstractPool.html#workerNodes" class="tsd-index-link"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-1024-path"></use><use href="#icon-1024-text"></use></svg><span>worker<wbr/>Nodes</span></a>
6c525543 67</div></section>
68<section class="tsd-index-section">
69<h3 class="tsd-index-heading">Accessors</h3>
3bd6a82e 70<div class="tsd-index-list"><a href="AbstractPool.html#busy" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><rect fill="var(--color-icon-background)" stroke="#FF4D4D" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12" id="icon-262144-path"></rect><path d="M8.85 16L11.13 7.24H12.582L14.85 16H13.758L13.182 13.672H10.53L9.954 16H8.85ZM10.746 12.76H12.954L12.282 10.06C12.154 9.548 12.054 9.12 11.982 8.776C11.91 8.432 11.866 8.208 11.85 8.104C11.834 8.208 11.79 8.432 11.718 8.776C11.646 9.12 11.546 9.544 11.418 10.048L10.746 12.76Z" fill="var(--color-text)" id="icon-262144-text"></path></svg><span>busy</span></a>
71<a href="AbstractPool.html#full" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-262144-path"></use><use href="#icon-262144-text"></use></svg><span>full</span></a>
72<a href="AbstractPool.html#numberOfQueuedTasks" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-262144-path"></use><use href="#icon-262144-text"></use></svg><span>number<wbr/>Of<wbr/>Queued<wbr/>Tasks</span></a>
73<a href="AbstractPool.html#numberOfRunningTasks" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-262144-path"></use><use href="#icon-262144-text"></use></svg><span>number<wbr/>Of<wbr/>Running<wbr/>Tasks</span></a>
2c94c3a5 74<a href="AbstractPool.html#size" class="tsd-index-link"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-262144-path"></use><use href="#icon-262144-text"></use></svg><span>size</span></a>
3bd6a82e 75<a href="AbstractPool.html#type" class="tsd-index-link"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-262144-path"></use><use href="#icon-262144-text"></use></svg><span>type</span></a>
6c525543 76</div></section>
77<section class="tsd-index-section">
78<h3 class="tsd-index-heading">Methods</h3>
3bd6a82e 79<div class="tsd-index-list"><a href="AbstractPool.html#afterTaskExecutionHook" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><rect fill="var(--color-icon-background)" stroke="#FF4DB8" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12" id="icon-2048-path"></rect><path d="M9.162 16V7.24H10.578L11.514 10.072C11.602 10.328 11.674 10.584 11.73 10.84C11.794 11.088 11.842 11.28 11.874 11.416C11.906 11.28 11.954 11.088 12.018 10.84C12.082 10.584 12.154 10.324 12.234 10.06L13.122 7.24H14.538V16H13.482V12.82C13.482 12.468 13.49 12.068 13.506 11.62C13.53 11.172 13.558 10.716 13.59 10.252C13.622 9.78 13.654 9.332 13.686 8.908C13.726 8.476 13.762 8.1 13.794 7.78L12.366 12.16H11.334L9.894 7.78C9.934 8.092 9.97 8.456 10.002 8.872C10.042 9.28 10.078 9.716 10.11 10.18C10.142 10.636 10.166 11.092 10.182 11.548C10.206 12.004 10.218 12.428 10.218 12.82V16H9.162Z" fill="var(--color-text)" id="icon-2048-text"></path></svg><span>after<wbr/>Task<wbr/>Execution<wbr/>Hook</span></a>
80<a href="AbstractPool.html#afterWorkerSetup" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>after<wbr/>Worker<wbr/>Setup</span></a>
81<a href="AbstractPool.html#beforeTaskExecutionHook" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>before<wbr/>Task<wbr/>Execution<wbr/>Hook</span></a>
82<a href="AbstractPool.html#buildTasksQueueOptions" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>build<wbr/>Tasks<wbr/>Queue<wbr/>Options</span></a>
83<a href="AbstractPool.html#checkAndEmitEvents" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>check<wbr/>And<wbr/>Emit<wbr/>Events</span></a>
84<a href="AbstractPool.html#checkFilePath" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>check<wbr/>File<wbr/>Path</span></a>
85<a href="AbstractPool.html#checkNumberOfWorkers" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>check<wbr/>Number<wbr/>Of<wbr/>Workers</span></a>
86<a href="AbstractPool.html#checkPoolOptions" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>check<wbr/>Pool<wbr/>Options</span></a>
87<a href="AbstractPool.html#checkValidTasksQueueOptions" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>check<wbr/>Valid<wbr/>Tasks<wbr/>Queue<wbr/>Options</span></a>
88<a href="AbstractPool.html#checkValidWorkerChoiceStrategy" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>check<wbr/>Valid<wbr/>Worker<wbr/>Choice<wbr/>Strategy</span></a>
2c94c3a5 89<a href="AbstractPool.html#checkValidWorkerChoiceStrategyOptions" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>check<wbr/>Valid<wbr/>Worker<wbr/>Choice<wbr/>Strategy<wbr/>Options</span></a>
3bd6a82e 90<a href="AbstractPool.html#chooseWorkerNode" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>choose<wbr/>Worker<wbr/>Node</span></a>
91<a href="AbstractPool.html#createAndSetupWorker" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>create<wbr/>And<wbr/>Setup<wbr/>Worker</span></a>
92<a href="AbstractPool.html#createWorker" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>create<wbr/>Worker</span></a>
93<a href="AbstractPool.html#dequeueTask" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>dequeue<wbr/>Task</span></a>
94<a href="AbstractPool.html#destroy" class="tsd-index-link"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>destroy</span></a>
95<a href="AbstractPool.html#destroyWorker" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>destroy<wbr/>Worker</span></a>
96<a href="AbstractPool.html#enableTasksQueue" class="tsd-index-link"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>enable<wbr/>Tasks<wbr/>Queue</span></a>
97<a href="AbstractPool.html#enqueueTask" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>enqueue<wbr/>Task</span></a>
98<a href="AbstractPool.html#execute" class="tsd-index-link"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>execute</span></a>
99<a href="AbstractPool.html#executeTask" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>execute<wbr/>Task</span></a>
3bd6a82e 100<a href="AbstractPool.html#flushTasksQueue" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>flush<wbr/>Tasks<wbr/>Queue</span></a>
3bd6a82e 101<a href="AbstractPool.html#flushTasksQueues" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>flush<wbr/>Tasks<wbr/>Queues</span></a>
102<a href="AbstractPool.html#getWorkerNodeKey" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>get<wbr/>Worker<wbr/>Node<wbr/>Key</span></a>
3bd6a82e 103<a href="AbstractPool.html#internalBusy" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>internal<wbr/>Busy</span></a>
104<a href="AbstractPool.html#isMain" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>is<wbr/>Main</span></a>
105<a href="AbstractPool.html#pushWorkerNode" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>push<wbr/>Worker<wbr/>Node</span></a>
106<a href="AbstractPool.html#registerWorkerMessageListener" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>register<wbr/>Worker<wbr/>Message<wbr/>Listener</span></a>
107<a href="AbstractPool.html#removeWorkerNode" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>remove<wbr/>Worker<wbr/>Node</span></a>
108<a href="AbstractPool.html#sendToWorker" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>send<wbr/>To<wbr/>Worker</span></a>
109<a href="AbstractPool.html#setTasksQueueOptions" class="tsd-index-link"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>set<wbr/>Tasks<wbr/>Queue<wbr/>Options</span></a>
110<a href="AbstractPool.html#setWorkerChoiceStrategy" class="tsd-index-link"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>set<wbr/>Worker<wbr/>Choice<wbr/>Strategy</span></a>
111<a href="AbstractPool.html#setWorkerChoiceStrategyOptions" class="tsd-index-link"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>set<wbr/>Worker<wbr/>Choice<wbr/>Strategy<wbr/>Options</span></a>
112<a href="AbstractPool.html#setWorkerNode" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>set<wbr/>Worker<wbr/>Node</span></a>
113<a href="AbstractPool.html#setWorkerNodeTasksUsage" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>set<wbr/>Worker<wbr/>Node<wbr/>Tasks<wbr/>Usage</span></a>
114<a href="AbstractPool.html#setupHook" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>setup<wbr/>Hook</span></a>
115<a href="AbstractPool.html#tasksQueueSize" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>tasks<wbr/>Queue<wbr/>Size</span></a>
811dc01f 116<a href="AbstractPool.html#updateRunTimeTasksUsage" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>update<wbr/>Run<wbr/>Time<wbr/>Tasks<wbr/>Usage</span></a>
117<a href="AbstractPool.html#updateWaitTimeTasksUsage" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>update<wbr/>Wait<wbr/>Time<wbr/>Tasks<wbr/>Usage</span></a>
3bd6a82e 118<a href="AbstractPool.html#workerListener" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>worker<wbr/>Listener</span></a>
6c525543 119</div></section></div></details></section></section>
120<section class="tsd-panel-group tsd-member-group">
121<h2>Constructors</h2>
3bd6a82e 122<section class="tsd-panel tsd-member"><a id="constructor" class="tsd-anchor"></a>
6c525543 123<h3 class="tsd-anchor-link"><span>constructor</span><a href="#constructor" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none" id="icon-anchor-a"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5" id="icon-anchor-b"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5" id="icon-anchor-c"></path></svg></a></h3>
3bd6a82e 124<ul class="tsd-signatures">
8d1797ad 125<li class="tsd-signature tsd-anchor-link" id="constructor.new_AbstractPool"><span class="tsd-kind-constructor-signature">new <wbr/>Abstract<wbr/>Pool</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Worker</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">numberOfWorkers</span>, <span class="tsd-kind-parameter">filePath</span>, <span class="tsd-kind-parameter">opts</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="AbstractPool.html" class="tsd-signature-type tsd-kind-class">AbstractPool</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Worker</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span><a href="#constructor.new_AbstractPool" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 126<li class="tsd-description">
127<div class="tsd-comment tsd-typography"><p>Constructs a new poolifier pool.</p>
128</div>
fab6d3b5 129<section class="tsd-panel">
6c525543 130<h4>Type Parameters</h4>
fab6d3b5 131<ul class="tsd-type-parameter-list">
6c525543 132<li>
8d1797ad 133<h4><span class="tsd-kind-type-parameter">Worker</span><span class="tsd-signature-symbol"> extends </span><a href="../interfaces/IWorker.html" class="tsd-signature-type tsd-kind-interface">IWorker</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Worker</span><span class="tsd-signature-symbol">&gt;</span></h4></li>
6c525543 134<li>
3bd6a82e 135<h4><span class="tsd-kind-type-parameter">Data</span> = <span class="tsd-signature-type">unknown</span></h4></li>
6c525543 136<li>
3bd6a82e 137<h4><span class="tsd-kind-type-parameter">Response</span> = <span class="tsd-signature-type">unknown</span></h4></li></ul></section>
6c525543 138<div class="tsd-parameters">
139<h4 class="tsd-parameters-title">Parameters</h4>
140<ul class="tsd-parameter-list">
141<li>
3bd6a82e 142<h5><span class="tsd-kind-parameter">numberOfWorkers</span>: <span class="tsd-signature-type">number</span></h5>
6c525543 143<div class="tsd-comment tsd-typography"><p>Number of workers that this pool should manage.</p>
144</div></li>
145<li>
3bd6a82e 146<h5><span class="tsd-kind-parameter">filePath</span>: <span class="tsd-signature-type">string</span></h5>
f63918da 147<div class="tsd-comment tsd-typography"><p>Path to the worker file.</p>
6c525543 148</div></li>
149<li>
8d1797ad 150<h5><span class="tsd-kind-parameter">opts</span>: <a href="../interfaces/PoolOptions.html" class="tsd-signature-type tsd-kind-interface">PoolOptions</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Worker</span><span class="tsd-signature-symbol">&gt;</span></h5>
6c525543 151<div class="tsd-comment tsd-typography"><p>Options for the pool.</p>
152</div></li></ul></div>
8d1797ad 153<h4 class="tsd-returns-title">Returns <a href="AbstractPool.html" class="tsd-signature-type tsd-kind-class">AbstractPool</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Worker</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources">
6c525543 154<ul>
ccb7d1a7 155<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L77">src/pools/abstract-pool.ts:77</a></li></ul></aside></li></ul></section></section>
6c525543 156<section class="tsd-panel-group tsd-member-group">
157<h2>Properties</h2>
3bd6a82e 158<section class="tsd-panel tsd-member"><a id="emitter" class="tsd-anchor"></a>
6c525543 159<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagOptional">Optional</code> <code class="tsd-tag ts-flagReadonly">Readonly</code> <span>emitter</span><a href="#emitter" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
8d1797ad 160<div class="tsd-signature"><span class="tsd-kind-property">emitter</span><span class="tsd-signature-symbol">?:</span> <a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a></div>
6c525543 161<div class="tsd-comment tsd-typography"><p>Emitter on which events can be listened to.</p>
162<p>Events that can currently be listened to:</p>
163<ul>
164<li><code>&#39;full&#39;</code>: Emitted when the pool is dynamic and full.</li>
165<li><code>&#39;busy&#39;</code>: Emitted when the pool is busy.</li>
ccb7d1a7 166<li><code>&#39;error&#39;</code>: Emitted when an uncaught error occurs.</li>
167<li><code>&#39;taskError&#39;</code>: Emitted when an error occurs while executing a task.</li>
6c525543 168</ul>
169</div><aside class="tsd-sources">
170<p>Implementation of <a href="../interfaces/IPool.html">IPool</a>.<a href="../interfaces/IPool.html#emitter">emitter</a></p>
171<ul>
ccb7d1a7 172<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L44">src/pools/abstract-pool.ts:44</a></li></ul></aside></section>
3bd6a82e 173<section class="tsd-panel tsd-member"><a id="filePath" class="tsd-anchor"></a>
6c525543 174<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagReadonly">Readonly</code> <span>file<wbr/>Path</span><a href="#filePath" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
8d1797ad 175<div class="tsd-signature"><span class="tsd-kind-property">file<wbr/>Path</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
f63918da 176<div class="tsd-comment tsd-typography"><p>Path to the worker file.</p>
6c525543 177</div><aside class="tsd-sources">
178<ul>
ccb7d1a7 179<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L79">src/pools/abstract-pool.ts:79</a></li></ul></aside></section>
3bd6a82e 180<section class="tsd-panel tsd-member"><a id="numberOfWorkers" class="tsd-anchor"></a>
6c525543 181<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagReadonly">Readonly</code> <span>number<wbr/>Of<wbr/>Workers</span><a href="#numberOfWorkers" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
8d1797ad 182<div class="tsd-signature"><span class="tsd-kind-property">number<wbr/>Of<wbr/>Workers</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
6c525543 183<div class="tsd-comment tsd-typography"><p>Number of workers that this pool should manage.</p>
184</div><aside class="tsd-sources">
185<ul>
ccb7d1a7 186<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L78">src/pools/abstract-pool.ts:78</a></li></ul></aside></section>
3bd6a82e 187<section class="tsd-panel tsd-member"><a id="opts" class="tsd-anchor"></a>
6c525543 188<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagReadonly">Readonly</code> <span>opts</span><a href="#opts" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
8d1797ad 189<div class="tsd-signature"><span class="tsd-kind-property">opts</span><span class="tsd-signature-symbol">:</span> <a href="../interfaces/PoolOptions.html" class="tsd-signature-type tsd-kind-interface">PoolOptions</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Worker</span><span class="tsd-signature-symbol">&gt;</span></div>
6c525543 190<div class="tsd-comment tsd-typography"><p>Options for the pool.</p>
191</div><aside class="tsd-sources">
192<ul>
ccb7d1a7 193<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L80">src/pools/abstract-pool.ts:80</a></li></ul></aside></section>
3bd6a82e 194<section class="tsd-panel tsd-member tsd-is-protected"><a id="promiseResponseMap" class="tsd-anchor"></a>
6c525543 195<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>promise<wbr/>Response<wbr/>Map</span><a href="#promiseResponseMap" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
8d1797ad 196<div class="tsd-signature"><span class="tsd-kind-property">promise<wbr/>Response<wbr/>Map</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type ">Map</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../interfaces/PromiseResponseWrapper.html" class="tsd-signature-type tsd-kind-interface">PromiseResponseWrapper</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Worker</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> = ...</span></div>
6c525543 197<div class="tsd-comment tsd-typography"><p>The execution response promise map.</p>
198<ul>
199<li><code>key</code>: The message id of each submitted task.</li>
200<li><code>value</code>: An object that contains the worker, the execution response promise resolve and reject callbacks.</li>
201</ul>
202<p>When we receive a message from the worker, we get a map entry with the promise resolve/reject bound to the message id.</p>
203</div><aside class="tsd-sources">
204<ul>
ccb7d1a7 205<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L54">src/pools/abstract-pool.ts:54</a></li></ul></aside></section>
3bd6a82e 206<section class="tsd-panel tsd-member tsd-is-protected"><a id="workerChoiceStrategyContext" class="tsd-anchor"></a>
6c525543 207<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>worker<wbr/>Choice<wbr/>Strategy<wbr/>Context</span><a href="#workerChoiceStrategyContext" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
8d1797ad 208<div class="tsd-signature"><span class="tsd-kind-property">worker<wbr/>Choice<wbr/>Strategy<wbr/>Context</span><span class="tsd-signature-symbol">:</span> <a href="WorkerChoiceStrategyContext.html" class="tsd-signature-type tsd-kind-class">WorkerChoiceStrategyContext</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Worker</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span></div>
6c525543 209<div class="tsd-comment tsd-typography"><p>Worker choice strategy context referencing a worker choice algorithm implementation.</p>
210<p>Default to a round robin algorithm.</p>
211</div><aside class="tsd-sources">
212<ul>
ccb7d1a7 213<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L64">src/pools/abstract-pool.ts:64</a></li></ul></aside></section>
3bd6a82e 214<section class="tsd-panel tsd-member"><a id="workerNodes" class="tsd-anchor"></a>
6c525543 215<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagReadonly">Readonly</code> <span>worker<wbr/>Nodes</span><a href="#workerNodes" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
8d1797ad 216<div class="tsd-signature"><span class="tsd-kind-property">worker<wbr/>Nodes</span><span class="tsd-signature-symbol">:</span> <a href="../interfaces/WorkerNode.html" class="tsd-signature-type tsd-kind-interface">WorkerNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Worker</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> = []</span></div>
6c525543 217<div class="tsd-comment tsd-typography"><p>Pool worker nodes.</p>
218</div><aside class="tsd-sources">
219<p>Implementation of <a href="../interfaces/IPool.html">IPool</a>.<a href="../interfaces/IPool.html#workerNodes">workerNodes</a></p>
220<ul>
ccb7d1a7 221<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L41">src/pools/abstract-pool.ts:41</a></li></ul></aside></section></section>
6c525543 222<section class="tsd-panel-group tsd-member-group">
223<h2>Accessors</h2>
3bd6a82e 224<section class="tsd-panel tsd-member tsd-is-protected"><a id="busy" class="tsd-anchor"></a>
d6b93f1a 225<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <code class="tsd-tag ts-flagAbstract">Abstract</code> <span>busy</span><a href="#busy" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 226<ul class="tsd-signatures tsd-is-protected">
6c525543 227<li class="tsd-signature" id="busy.busy-1"><span class="tsd-signature-symbol">get</span> busy<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li>
228<li class="tsd-description">
229<div class="tsd-comment tsd-typography"><p>Whether the pool is busy or not.</p>
230<p>The pool busyness boolean status.</p>
231</div>
232<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
6c525543 233<ul>
ccb7d1a7 234<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L336">src/pools/abstract-pool.ts:336</a></li></ul></aside></li></ul></section>
3bd6a82e 235<section class="tsd-panel tsd-member tsd-is-protected"><a id="full" class="tsd-anchor"></a>
d6b93f1a 236<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <code class="tsd-tag ts-flagAbstract">Abstract</code> <span>full</span><a href="#full" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 237<ul class="tsd-signatures tsd-is-protected">
6c525543 238<li class="tsd-signature" id="full.full-1"><span class="tsd-signature-symbol">get</span> full<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li>
239<li class="tsd-description">
240<div class="tsd-comment tsd-typography"><p>Whether the pool is full or not.</p>
241<p>The pool filling boolean status.</p>
242</div>
243<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
6c525543 244<ul>
ccb7d1a7 245<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L329">src/pools/abstract-pool.ts:329</a></li></ul></aside></li></ul></section>
3bd6a82e 246<section class="tsd-panel tsd-member tsd-is-private"><a id="numberOfQueuedTasks" class="tsd-anchor"></a>
6c525543 247<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>number<wbr/>Of<wbr/>Queued<wbr/>Tasks</span><a href="#numberOfQueuedTasks" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 248<ul class="tsd-signatures tsd-is-private">
6c525543 249<li class="tsd-signature" id="numberOfQueuedTasks.numberOfQueuedTasks-1"><span class="tsd-signature-symbol">get</span> numberOfQueuedTasks<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li>
250<li class="tsd-description">
251<div class="tsd-comment tsd-typography"><p>Number of tasks queued in the pool.</p>
252</div>
253<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
254<ul>
ccb7d1a7 255<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L230">src/pools/abstract-pool.ts:230</a></li></ul></aside></li></ul></section>
3bd6a82e 256<section class="tsd-panel tsd-member tsd-is-private"><a id="numberOfRunningTasks" class="tsd-anchor"></a>
6c525543 257<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>number<wbr/>Of<wbr/>Running<wbr/>Tasks</span><a href="#numberOfRunningTasks" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 258<ul class="tsd-signatures tsd-is-private">
6c525543 259<li class="tsd-signature" id="numberOfRunningTasks.numberOfRunningTasks-1"><span class="tsd-signature-symbol">get</span> numberOfRunningTasks<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li>
260<li class="tsd-description">
261<div class="tsd-comment tsd-typography"><p>Number of tasks running in the pool.</p>
262</div>
263<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
264<ul>
ccb7d1a7 265<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L220">src/pools/abstract-pool.ts:220</a></li></ul></aside></li></ul></section>
2c94c3a5 266<section class="tsd-panel tsd-member"><a id="size" class="tsd-anchor"></a>
267<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagAbstract">Abstract</code> <span>size</span><a href="#size" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
268<ul class="tsd-signatures">
269<li class="tsd-signature" id="size.size-1"><span class="tsd-signature-symbol">get</span> size<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li>
270<li class="tsd-description">
271<div class="tsd-comment tsd-typography"><p>Pool maximum size.</p>
272</div>
273<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
274<p>Implementation of <a href="../interfaces/IPool.html">IPool</a>.<a href="../interfaces/IPool.html#size">size</a></p>
275<ul>
ccb7d1a7 276<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L215">src/pools/abstract-pool.ts:215</a></li></ul></aside></li></ul></section>
3bd6a82e 277<section class="tsd-panel tsd-member"><a id="type" class="tsd-anchor"></a>
6c525543 278<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagAbstract">Abstract</code> <span>type</span><a href="#type" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 279<ul class="tsd-signatures">
8d1797ad 280<li class="tsd-signature" id="type.type-1"><span class="tsd-signature-symbol">get</span> type<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../enums/PoolType.html" class="tsd-signature-type tsd-kind-enum">PoolType</a></li>
6c525543 281<li class="tsd-description">
282<div class="tsd-comment tsd-typography"><p>Pool type.</p>
283<p>If it is <code>&#39;dynamic&#39;</code>, it provides the <code>max</code> property.</p>
284</div>
8d1797ad 285<h4 class="tsd-returns-title">Returns <a href="../enums/PoolType.html" class="tsd-signature-type tsd-kind-enum">PoolType</a></h4><aside class="tsd-sources">
6c525543 286<p>Implementation of <a href="../interfaces/IPool.html">IPool</a>.<a href="../interfaces/IPool.html#type">type</a></p>
287<ul>
ccb7d1a7 288<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L212">src/pools/abstract-pool.ts:212</a></li></ul></aside></li></ul></section></section>
6c525543 289<section class="tsd-panel-group tsd-member-group">
290<h2>Methods</h2>
3bd6a82e 291<section class="tsd-panel tsd-member tsd-is-protected"><a id="afterTaskExecutionHook" class="tsd-anchor"></a>
6c525543 292<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>after<wbr/>Task<wbr/>Execution<wbr/>Hook</span><a href="#afterTaskExecutionHook" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 293<ul class="tsd-signatures tsd-is-protected">
8d1797ad 294<li class="tsd-signature tsd-anchor-link" id="afterTaskExecutionHook.afterTaskExecutionHook-1"><span class="tsd-kind-call-signature">after<wbr/>Task<wbr/>Execution<wbr/>Hook</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">worker</span>, <span class="tsd-kind-parameter">message</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#afterTaskExecutionHook.afterTaskExecutionHook-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 295<li class="tsd-description">
296<div class="tsd-comment tsd-typography"><p>Hook executed after the worker task execution.
297Can be overridden.</p>
298</div>
299<div class="tsd-parameters">
300<h4 class="tsd-parameters-title">Parameters</h4>
301<ul class="tsd-parameter-list">
302<li>
3bd6a82e 303<h5><span class="tsd-kind-parameter">worker</span>: <span class="tsd-signature-type tsd-kind-type-parameter">Worker</span></h5>
6c525543 304<div class="tsd-comment tsd-typography"><p>The worker.</p>
305</div></li>
306<li>
2c94c3a5 307<h5><span class="tsd-kind-parameter">message</span>: <a href="../interfaces/MessageValue.html" class="tsd-signature-type tsd-kind-interface">MessageValue</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type ">Worker</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type ">MessagePort</span><span class="tsd-signature-symbol">&gt;</span></h5>
6c525543 308<div class="tsd-comment tsd-typography"><p>The received message.</p>
309</div></li></ul></div>
310<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
311<ul>
ccb7d1a7 312<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L430">src/pools/abstract-pool.ts:430</a></li></ul></aside></li></ul></section>
3bd6a82e 313<section class="tsd-panel tsd-member tsd-is-protected"><a id="afterWorkerSetup" class="tsd-anchor"></a>
6c525543 314<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <code class="tsd-tag ts-flagAbstract">Abstract</code> <span>after<wbr/>Worker<wbr/>Setup</span><a href="#afterWorkerSetup" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 315<ul class="tsd-signatures tsd-is-protected">
8d1797ad 316<li class="tsd-signature tsd-anchor-link" id="afterWorkerSetup.afterWorkerSetup-1"><span class="tsd-kind-call-signature">after<wbr/>Worker<wbr/>Setup</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">worker</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#afterWorkerSetup.afterWorkerSetup-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 317<li class="tsd-description">
318<div class="tsd-comment tsd-typography"><p>Function that can be hooked up when a worker has been newly created and moved to the pool worker nodes.</p>
319<p>Can be used to update the <code>maxListeners</code> or binding the <code>main-worker</code>&lt;-&gt;<code>worker</code> connection if not bind by default.</p>
320</div>
321<div class="tsd-parameters">
322<h4 class="tsd-parameters-title">Parameters</h4>
323<ul class="tsd-parameter-list">
324<li>
3bd6a82e 325<h5><span class="tsd-kind-parameter">worker</span>: <span class="tsd-signature-type tsd-kind-type-parameter">Worker</span></h5>
6c525543 326<div class="tsd-comment tsd-typography"><p>The newly created worker.</p>
327</div></li></ul></div>
328<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
329<ul>
ccb7d1a7 330<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L554">src/pools/abstract-pool.ts:554</a></li></ul></aside></li></ul></section>
3bd6a82e 331<section class="tsd-panel tsd-member tsd-is-protected"><a id="beforeTaskExecutionHook" class="tsd-anchor"></a>
6c525543 332<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>before<wbr/>Task<wbr/>Execution<wbr/>Hook</span><a href="#beforeTaskExecutionHook" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 333<ul class="tsd-signatures tsd-is-protected">
8d1797ad 334<li class="tsd-signature tsd-anchor-link" id="beforeTaskExecutionHook.beforeTaskExecutionHook-1"><span class="tsd-kind-call-signature">before<wbr/>Task<wbr/>Execution<wbr/>Hook</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">workerNodeKey</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#beforeTaskExecutionHook.beforeTaskExecutionHook-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 335<li class="tsd-description">
336<div class="tsd-comment tsd-typography"><p>Hook executed before the worker task execution.
337Can be overridden.</p>
338</div>
339<div class="tsd-parameters">
340<h4 class="tsd-parameters-title">Parameters</h4>
341<ul class="tsd-parameter-list">
342<li>
3bd6a82e 343<h5><span class="tsd-kind-parameter">workerNodeKey</span>: <span class="tsd-signature-type">number</span></h5>
6c525543 344<div class="tsd-comment tsd-typography"><p>The worker node key.</p>
345</div></li></ul></div>
346<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
347<ul>
ccb7d1a7 348<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L419">src/pools/abstract-pool.ts:419</a></li></ul></aside></li></ul></section>
3bd6a82e 349<section class="tsd-panel tsd-member tsd-is-private"><a id="buildTasksQueueOptions" class="tsd-anchor"></a>
6047493a 350<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>build<wbr/>Tasks<wbr/>Queue<wbr/>Options</span><a href="#buildTasksQueueOptions" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 351<ul class="tsd-signatures tsd-is-private">
8d1797ad 352<li class="tsd-signature tsd-anchor-link" id="buildTasksQueueOptions.buildTasksQueueOptions-1"><span class="tsd-kind-call-signature">build<wbr/>Tasks<wbr/>Queue<wbr/>Options</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">tasksQueueOptions</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../interfaces/TasksQueueOptions.html" class="tsd-signature-type tsd-kind-interface">TasksQueueOptions</a><a href="#buildTasksQueueOptions.buildTasksQueueOptions-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6047493a 353<li class="tsd-description">
354<div class="tsd-parameters">
355<h4 class="tsd-parameters-title">Parameters</h4>
356<ul class="tsd-parameter-list">
357<li>
8d1797ad 358<h5><span class="tsd-kind-parameter">tasksQueueOptions</span>: <a href="../interfaces/TasksQueueOptions.html" class="tsd-signature-type tsd-kind-interface">TasksQueueOptions</a></h5></li></ul></div>
359<h4 class="tsd-returns-title">Returns <a href="../interfaces/TasksQueueOptions.html" class="tsd-signature-type tsd-kind-interface">TasksQueueOptions</a></h4><aside class="tsd-sources">
6047493a 360<ul>
ccb7d1a7 361<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L316">src/pools/abstract-pool.ts:316</a></li></ul></aside></li></ul></section>
3bd6a82e 362<section class="tsd-panel tsd-member tsd-is-private"><a id="checkAndEmitEvents" class="tsd-anchor"></a>
6c525543 363<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>check<wbr/>And<wbr/>Emit<wbr/>Events</span><a href="#checkAndEmitEvents" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 364<ul class="tsd-signatures tsd-is-private">
8d1797ad 365<li class="tsd-signature tsd-anchor-link" id="checkAndEmitEvents.checkAndEmitEvents-1"><span class="tsd-kind-call-signature">check<wbr/>And<wbr/>Emit<wbr/>Events</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#checkAndEmitEvents.checkAndEmitEvents-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 366<li class="tsd-description">
367<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
368<ul>
ccb7d1a7 369<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L628">src/pools/abstract-pool.ts:628</a></li></ul></aside></li></ul></section>
3bd6a82e 370<section class="tsd-panel tsd-member tsd-is-private"><a id="checkFilePath" class="tsd-anchor"></a>
6c525543 371<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>check<wbr/>File<wbr/>Path</span><a href="#checkFilePath" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 372<ul class="tsd-signatures tsd-is-private">
8d1797ad 373<li class="tsd-signature tsd-anchor-link" id="checkFilePath.checkFilePath-1"><span class="tsd-kind-call-signature">check<wbr/>File<wbr/>Path</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">filePath</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#checkFilePath.checkFilePath-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 374<li class="tsd-description">
375<div class="tsd-parameters">
376<h4 class="tsd-parameters-title">Parameters</h4>
377<ul class="tsd-parameter-list">
378<li>
3bd6a82e 379<h5><span class="tsd-kind-parameter">filePath</span>: <span class="tsd-signature-type">string</span></h5></li></ul></div>
6c525543 380<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
381<ul>
ccb7d1a7 382<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L114">src/pools/abstract-pool.ts:114</a></li></ul></aside></li></ul></section>
3bd6a82e 383<section class="tsd-panel tsd-member tsd-is-private"><a id="checkNumberOfWorkers" class="tsd-anchor"></a>
6c525543 384<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>check<wbr/>Number<wbr/>Of<wbr/>Workers</span><a href="#checkNumberOfWorkers" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 385<ul class="tsd-signatures tsd-is-private">
8d1797ad 386<li class="tsd-signature tsd-anchor-link" id="checkNumberOfWorkers.checkNumberOfWorkers-1"><span class="tsd-kind-call-signature">check<wbr/>Number<wbr/>Of<wbr/>Workers</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">numberOfWorkers</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#checkNumberOfWorkers.checkNumberOfWorkers-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 387<li class="tsd-description">
388<div class="tsd-parameters">
389<h4 class="tsd-parameters-title">Parameters</h4>
390<ul class="tsd-parameter-list">
391<li>
3bd6a82e 392<h5><span class="tsd-kind-parameter">numberOfWorkers</span>: <span class="tsd-signature-type">number</span></h5></li></ul></div>
6c525543 393<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
394<ul>
ccb7d1a7 395<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L123">src/pools/abstract-pool.ts:123</a></li></ul></aside></li></ul></section>
3bd6a82e 396<section class="tsd-panel tsd-member tsd-is-private"><a id="checkPoolOptions" class="tsd-anchor"></a>
6c525543 397<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>check<wbr/>Pool<wbr/>Options</span><a href="#checkPoolOptions" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 398<ul class="tsd-signatures tsd-is-private">
8d1797ad 399<li class="tsd-signature tsd-anchor-link" id="checkPoolOptions.checkPoolOptions-1"><span class="tsd-kind-call-signature">check<wbr/>Pool<wbr/>Options</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">opts</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#checkPoolOptions.checkPoolOptions-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 400<li class="tsd-description">
401<div class="tsd-parameters">
402<h4 class="tsd-parameters-title">Parameters</h4>
403<ul class="tsd-parameter-list">
404<li>
8d1797ad 405<h5><span class="tsd-kind-parameter">opts</span>: <a href="../interfaces/PoolOptions.html" class="tsd-signature-type tsd-kind-interface">PoolOptions</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Worker</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
6c525543 406<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
407<ul>
ccb7d1a7 408<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L141">src/pools/abstract-pool.ts:141</a></li></ul></aside></li></ul></section>
3bd6a82e 409<section class="tsd-panel tsd-member tsd-is-private"><a id="checkValidTasksQueueOptions" class="tsd-anchor"></a>
6047493a 410<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>check<wbr/>Valid<wbr/>Tasks<wbr/>Queue<wbr/>Options</span><a href="#checkValidTasksQueueOptions" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 411<ul class="tsd-signatures tsd-is-private">
8d1797ad 412<li class="tsd-signature tsd-anchor-link" id="checkValidTasksQueueOptions.checkValidTasksQueueOptions-1"><span class="tsd-kind-call-signature">check<wbr/>Valid<wbr/>Tasks<wbr/>Queue<wbr/>Options</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">tasksQueueOptions</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#checkValidTasksQueueOptions.checkValidTasksQueueOptions-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6047493a 413<li class="tsd-description">
414<div class="tsd-parameters">
415<h4 class="tsd-parameters-title">Parameters</h4>
416<ul class="tsd-parameter-list">
417<li>
8d1797ad 418<h5><span class="tsd-kind-parameter">tasksQueueOptions</span>: <a href="../interfaces/TasksQueueOptions.html" class="tsd-signature-type tsd-kind-interface">TasksQueueOptions</a></h5></li></ul></div>
6047493a 419<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
420<ul>
ccb7d1a7 421<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L196">src/pools/abstract-pool.ts:196</a></li></ul></aside></li></ul></section>
3bd6a82e 422<section class="tsd-panel tsd-member tsd-is-private"><a id="checkValidWorkerChoiceStrategy" class="tsd-anchor"></a>
6c525543 423<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>check<wbr/>Valid<wbr/>Worker<wbr/>Choice<wbr/>Strategy</span><a href="#checkValidWorkerChoiceStrategy" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 424<ul class="tsd-signatures tsd-is-private">
8d1797ad 425<li class="tsd-signature tsd-anchor-link" id="checkValidWorkerChoiceStrategy.checkValidWorkerChoiceStrategy-1"><span class="tsd-kind-call-signature">check<wbr/>Valid<wbr/>Worker<wbr/>Choice<wbr/>Strategy</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">workerChoiceStrategy</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#checkValidWorkerChoiceStrategy.checkValidWorkerChoiceStrategy-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 426<li class="tsd-description">
427<div class="tsd-parameters">
428<h4 class="tsd-parameters-title">Parameters</h4>
429<ul class="tsd-parameter-list">
430<li>
811dc01f 431<h5><span class="tsd-kind-parameter">workerChoiceStrategy</span>: <span class="tsd-signature-type">&quot;ROUND_ROBIN&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;LEAST_USED&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;LEAST_BUSY&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;FAIR_SHARE&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;WEIGHTED_ROUND_ROBIN&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;INTERLEAVED_WEIGHTED_ROUND_ROBIN&quot;</span></h5></li></ul></div>
6c525543 432<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
433<ul>
ccb7d1a7 434<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L168">src/pools/abstract-pool.ts:168</a></li></ul></aside></li></ul></section>
2c94c3a5 435<section class="tsd-panel tsd-member tsd-is-private"><a id="checkValidWorkerChoiceStrategyOptions" class="tsd-anchor"></a>
436<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>check<wbr/>Valid<wbr/>Worker<wbr/>Choice<wbr/>Strategy<wbr/>Options</span><a href="#checkValidWorkerChoiceStrategyOptions" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
437<ul class="tsd-signatures tsd-is-private">
438<li class="tsd-signature tsd-anchor-link" id="checkValidWorkerChoiceStrategyOptions.checkValidWorkerChoiceStrategyOptions-1"><span class="tsd-kind-call-signature">check<wbr/>Valid<wbr/>Worker<wbr/>Choice<wbr/>Strategy<wbr/>Options</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">workerChoiceStrategyOptions</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#checkValidWorkerChoiceStrategyOptions.checkValidWorkerChoiceStrategyOptions-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
439<li class="tsd-description">
440<div class="tsd-parameters">
441<h4 class="tsd-parameters-title">Parameters</h4>
442<ul class="tsd-parameter-list">
443<li>
444<h5><span class="tsd-kind-parameter">workerChoiceStrategyOptions</span>: <a href="../interfaces/WorkerChoiceStrategyOptions.html" class="tsd-signature-type tsd-kind-interface">WorkerChoiceStrategyOptions</a></h5></li></ul></div>
445<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
446<ul>
ccb7d1a7 447<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L178">src/pools/abstract-pool.ts:178</a></li></ul></aside></li></ul></section>
3bd6a82e 448<section class="tsd-panel tsd-member tsd-is-protected"><a id="chooseWorkerNode" class="tsd-anchor"></a>
6c525543 449<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>choose<wbr/>Worker<wbr/>Node</span><a href="#chooseWorkerNode" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 450<ul class="tsd-signatures tsd-is-protected">
811dc01f 451<li class="tsd-signature tsd-anchor-link" id="chooseWorkerNode.chooseWorkerNode-1"><span class="tsd-kind-call-signature">choose<wbr/>Worker<wbr/>Node</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><a href="#chooseWorkerNode.chooseWorkerNode-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 452<li class="tsd-description">
453<div class="tsd-comment tsd-typography"><p>Chooses a worker node for the next task.</p>
811dc01f 454<p>The default worker choice strategy uses a round robin algorithm to distribute the load.</p>
6c525543 455</div>
811dc01f 456<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><p>The worker node key</p>
fab6d3b5 457<aside class="tsd-sources">
6c525543 458<ul>
ccb7d1a7 459<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L498">src/pools/abstract-pool.ts:498</a></li></ul></aside></li></ul></section>
3bd6a82e 460<section class="tsd-panel tsd-member tsd-is-protected"><a id="createAndSetupWorker" class="tsd-anchor"></a>
6c525543 461<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>create<wbr/>And<wbr/>Setup<wbr/>Worker</span><a href="#createAndSetupWorker" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 462<ul class="tsd-signatures tsd-is-protected">
8d1797ad 463<li class="tsd-signature tsd-anchor-link" id="createAndSetupWorker.createAndSetupWorker-1"><span class="tsd-kind-call-signature">create<wbr/>And<wbr/>Setup<wbr/>Worker</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">Worker</span><a href="#createAndSetupWorker.createAndSetupWorker-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 464<li class="tsd-description">
465<div class="tsd-comment tsd-typography"><p>Creates a new worker and sets it up completely in the pool worker nodes.</p>
6c525543 466</div>
fab6d3b5 467<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">Worker</span></h4><p>New, completely set up worker.</p>
468<aside class="tsd-sources">
6c525543 469<ul>
ccb7d1a7 470<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L561">src/pools/abstract-pool.ts:561</a></li></ul></aside></li></ul></section>
3bd6a82e 471<section class="tsd-panel tsd-member tsd-is-protected"><a id="createWorker" class="tsd-anchor"></a>
6c525543 472<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <code class="tsd-tag ts-flagAbstract">Abstract</code> <span>create<wbr/>Worker</span><a href="#createWorker" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 473<ul class="tsd-signatures tsd-is-protected">
8d1797ad 474<li class="tsd-signature tsd-anchor-link" id="createWorker.createWorker-1"><span class="tsd-kind-call-signature">create<wbr/>Worker</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">Worker</span><a href="#createWorker.createWorker-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 475<li class="tsd-description">
476<div class="tsd-comment tsd-typography"><p>Returns a newly created worker.</p>
477</div>
3bd6a82e 478<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">Worker</span></h4><aside class="tsd-sources">
6c525543 479<ul>
ccb7d1a7 480<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L545">src/pools/abstract-pool.ts:545</a></li></ul></aside></li></ul></section>
3bd6a82e 481<section class="tsd-panel tsd-member tsd-is-private"><a id="dequeueTask" class="tsd-anchor"></a>
6c525543 482<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>dequeue<wbr/>Task</span><a href="#dequeueTask" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 483<ul class="tsd-signatures tsd-is-private">
8d1797ad 484<li class="tsd-signature tsd-anchor-link" id="dequeueTask.dequeueTask-1"><span class="tsd-kind-call-signature">dequeue<wbr/>Task</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">workerNodeKey</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><a href="../interfaces/Task.html" class="tsd-signature-type tsd-kind-interface">Task</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">&gt;</span><a href="#dequeueTask.dequeueTask-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 485<li class="tsd-description">
486<div class="tsd-parameters">
487<h4 class="tsd-parameters-title">Parameters</h4>
488<ul class="tsd-parameter-list">
489<li>
3bd6a82e 490<h5><span class="tsd-kind-parameter">workerNodeKey</span>: <span class="tsd-signature-type">number</span></h5></li></ul></div>
8d1797ad 491<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><a href="../interfaces/Task.html" class="tsd-signature-type tsd-kind-interface">Task</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources">
6c525543 492<ul>
ccb7d1a7 493<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L727">src/pools/abstract-pool.ts:727</a></li></ul></aside></li></ul></section>
3bd6a82e 494<section class="tsd-panel tsd-member"><a id="destroy" class="tsd-anchor"></a>
6c525543 495<h3 class="tsd-anchor-link"><span>destroy</span><a href="#destroy" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 496<ul class="tsd-signatures">
8d1797ad 497<li class="tsd-signature tsd-anchor-link" id="destroy.destroy-1"><span class="tsd-kind-call-signature">destroy</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type ">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span><a href="#destroy.destroy-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 498<li class="tsd-description">
499<div class="tsd-comment tsd-typography"><p>Shutdowns every current worker in this pool.</p>
500</div>
3bd6a82e 501<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type ">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources">
502<p>Implementation of <a href="../interfaces/IPool.html">IPool</a>.<a href="../interfaces/IPool.html#destroy">destroy</a></p>
6c525543 503<ul>
ccb7d1a7 504<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L382">src/pools/abstract-pool.ts:382</a></li></ul></aside></li></ul></section>
3bd6a82e 505<section class="tsd-panel tsd-member tsd-is-protected"><a id="destroyWorker" class="tsd-anchor"></a>
6c525543 506<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <code class="tsd-tag ts-flagAbstract">Abstract</code> <span>destroy<wbr/>Worker</span><a href="#destroyWorker" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 507<ul class="tsd-signatures tsd-is-protected">
8d1797ad 508<li class="tsd-signature tsd-anchor-link" id="destroyWorker.destroyWorker-1"><span class="tsd-kind-call-signature">destroy<wbr/>Worker</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">worker</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type ">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span><a href="#destroyWorker.destroyWorker-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 509<li class="tsd-description">
510<div class="tsd-comment tsd-typography"><p>Shutdowns the given worker.</p>
511</div>
512<div class="tsd-parameters">
513<h4 class="tsd-parameters-title">Parameters</h4>
514<ul class="tsd-parameter-list">
515<li>
3bd6a82e 516<h5><span class="tsd-kind-parameter">worker</span>: <span class="tsd-signature-type tsd-kind-type-parameter">Worker</span></h5>
6c525543 517<div class="tsd-comment tsd-typography"><p>A worker within <code>workerNodes</code>.</p>
518</div></li></ul></div>
3bd6a82e 519<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type ">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources">
6c525543 520<ul>
ccb7d1a7 521<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L396">src/pools/abstract-pool.ts:396</a></li></ul></aside></li></ul></section>
3bd6a82e 522<section class="tsd-panel tsd-member"><a id="enableTasksQueue" class="tsd-anchor"></a>
6047493a 523<h3 class="tsd-anchor-link"><span>enable<wbr/>Tasks<wbr/>Queue</span><a href="#enableTasksQueue" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 524<ul class="tsd-signatures">
8d1797ad 525<li class="tsd-signature tsd-anchor-link" id="enableTasksQueue.enableTasksQueue-1"><span class="tsd-kind-call-signature">enable<wbr/>Tasks<wbr/>Queue</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">enable</span>, <span class="tsd-kind-parameter">tasksQueueOptions</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#enableTasksQueue.enableTasksQueue-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6047493a 526<li class="tsd-description">
527<div class="tsd-comment tsd-typography"><p>Enables/disables the worker tasks queue in this pool.</p>
528</div>
529<div class="tsd-parameters">
530<h4 class="tsd-parameters-title">Parameters</h4>
531<ul class="tsd-parameter-list">
532<li>
3bd6a82e 533<h5><span class="tsd-kind-parameter">enable</span>: <span class="tsd-signature-type">boolean</span></h5>
6047493a 534<div class="tsd-comment tsd-typography"><p>Whether to enable or disable the worker tasks queue.</p>
535</div></li>
536<li>
8d1797ad 537<h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">tasksQueueOptions</span>: <a href="../interfaces/TasksQueueOptions.html" class="tsd-signature-type tsd-kind-interface">TasksQueueOptions</a></h5>
d655c2c2 538<div class="tsd-comment tsd-typography"><p>The worker tasks queue options.</p>
539</div></li></ul></div>
6047493a 540<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
3bd6a82e 541<p>Implementation of <a href="../interfaces/IPool.html">IPool</a>.<a href="../interfaces/IPool.html#enableTasksQueue">enableTasksQueue</a></p>
6047493a 542<ul>
ccb7d1a7 543<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L294">src/pools/abstract-pool.ts:294</a></li></ul></aside></li></ul></section>
3bd6a82e 544<section class="tsd-panel tsd-member tsd-is-private"><a id="enqueueTask" class="tsd-anchor"></a>
6c525543 545<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>enqueue<wbr/>Task</span><a href="#enqueueTask" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 546<ul class="tsd-signatures tsd-is-private">
8d1797ad 547<li class="tsd-signature tsd-anchor-link" id="enqueueTask.enqueueTask-1"><span class="tsd-kind-call-signature">enqueue<wbr/>Task</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">workerNodeKey</span>, <span class="tsd-kind-parameter">task</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><a href="#enqueueTask.enqueueTask-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 548<li class="tsd-description">
549<div class="tsd-parameters">
550<h4 class="tsd-parameters-title">Parameters</h4>
551<ul class="tsd-parameter-list">
552<li>
3bd6a82e 553<h5><span class="tsd-kind-parameter">workerNodeKey</span>: <span class="tsd-signature-type">number</span></h5></li>
6c525543 554<li>
8d1797ad 555<h5><span class="tsd-kind-parameter">task</span>: <a href="../interfaces/Task.html" class="tsd-signature-type tsd-kind-interface">Task</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
6c525543 556<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
557<ul>
ccb7d1a7 558<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L723">src/pools/abstract-pool.ts:723</a></li></ul></aside></li></ul></section>
3bd6a82e 559<section class="tsd-panel tsd-member"><a id="execute" class="tsd-anchor"></a>
6c525543 560<h3 class="tsd-anchor-link"><span>execute</span><a href="#execute" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 561<ul class="tsd-signatures">
2c94c3a5 562<li class="tsd-signature tsd-anchor-link" id="execute.execute-1"><span class="tsd-kind-call-signature">execute</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">data</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">name</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type ">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span><a href="#execute.execute-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 563<li class="tsd-description">
1bb559f9 564<div class="tsd-comment tsd-typography"><p>Executes the specified function in the worker constructor with the task data input parameter.</p>
6c525543 565</div>
566<div class="tsd-parameters">
567<h4 class="tsd-parameters-title">Parameters</h4>
568<ul class="tsd-parameter-list">
569<li>
3bd6a82e 570<h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">data</span>: <span class="tsd-signature-type tsd-kind-type-parameter">Data</span></h5>
761b0c73 571<div class="tsd-comment tsd-typography"><p>The task input data for the specified worker function. This can only be serializable data.</p>
2c94c3a5 572</div></li>
573<li>
574<h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">name</span>: <span class="tsd-signature-type">string</span></h5>
575<div class="tsd-comment tsd-typography"><p>The name of the worker function to execute. If not specified, the default worker function will be executed.</p>
6c525543 576</div></li></ul></div>
fab6d3b5 577<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type ">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span></h4><p>Promise that will be fulfilled when the task is completed.</p>
578<aside class="tsd-sources">
3bd6a82e 579<p>Implementation of <a href="../interfaces/IPool.html">IPool</a>.<a href="../interfaces/IPool.html#execute">execute</a></p>
6c525543 580<ul>
ccb7d1a7 581<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L347">src/pools/abstract-pool.ts:347</a></li></ul></aside></li></ul></section>
3bd6a82e 582<section class="tsd-panel tsd-member tsd-is-private"><a id="executeTask" class="tsd-anchor"></a>
6c525543 583<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>execute<wbr/>Task</span><a href="#executeTask" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 584<ul class="tsd-signatures tsd-is-private">
8d1797ad 585<li class="tsd-signature tsd-anchor-link" id="executeTask.executeTask-1"><span class="tsd-kind-call-signature">execute<wbr/>Task</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">workerNodeKey</span>, <span class="tsd-kind-parameter">task</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#executeTask.executeTask-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 586<li class="tsd-description">
587<div class="tsd-parameters">
588<h4 class="tsd-parameters-title">Parameters</h4>
589<ul class="tsd-parameter-list">
590<li>
3bd6a82e 591<h5><span class="tsd-kind-parameter">workerNodeKey</span>: <span class="tsd-signature-type">number</span></h5></li>
6c525543 592<li>
8d1797ad 593<h5><span class="tsd-kind-parameter">task</span>: <a href="../interfaces/Task.html" class="tsd-signature-type tsd-kind-interface">Task</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
6c525543 594<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
595<ul>
ccb7d1a7 596<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L718">src/pools/abstract-pool.ts:718</a></li></ul></aside></li></ul></section>
3bd6a82e 597<section class="tsd-panel tsd-member tsd-is-private"><a id="flushTasksQueue" class="tsd-anchor"></a>
6c525543 598<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>flush<wbr/>Tasks<wbr/>Queue</span><a href="#flushTasksQueue" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 599<ul class="tsd-signatures tsd-is-private">
8d1797ad 600<li class="tsd-signature tsd-anchor-link" id="flushTasksQueue.flushTasksQueue-1"><span class="tsd-kind-call-signature">flush<wbr/>Tasks<wbr/>Queue</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">workerNodeKey</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#flushTasksQueue.flushTasksQueue-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 601<li class="tsd-description">
602<div class="tsd-parameters">
603<h4 class="tsd-parameters-title">Parameters</h4>
604<ul class="tsd-parameter-list">
605<li>
3bd6a82e 606<h5><span class="tsd-kind-parameter">workerNodeKey</span>: <span class="tsd-signature-type">number</span></h5></li></ul></div>
6c525543 607<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
608<ul>
ccb7d1a7 609<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L735">src/pools/abstract-pool.ts:735</a></li></ul></aside></li></ul></section>
3bd6a82e 610<section class="tsd-panel tsd-member tsd-is-private"><a id="flushTasksQueues" class="tsd-anchor"></a>
761b0c73 611<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>flush<wbr/>Tasks<wbr/>Queues</span><a href="#flushTasksQueues" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 612<ul class="tsd-signatures tsd-is-private">
8d1797ad 613<li class="tsd-signature tsd-anchor-link" id="flushTasksQueues.flushTasksQueues-1"><span class="tsd-kind-call-signature">flush<wbr/>Tasks<wbr/>Queues</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#flushTasksQueues.flushTasksQueues-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
761b0c73 614<li class="tsd-description">
615<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
616<ul>
ccb7d1a7 617<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L746">src/pools/abstract-pool.ts:746</a></li></ul></aside></li></ul></section>
3bd6a82e 618<section class="tsd-panel tsd-member tsd-is-private"><a id="getWorkerNodeKey" class="tsd-anchor"></a>
6c525543 619<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>get<wbr/>Worker<wbr/>Node<wbr/>Key</span><a href="#getWorkerNodeKey" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 620<ul class="tsd-signatures tsd-is-private">
8d1797ad 621<li class="tsd-signature tsd-anchor-link" id="getWorkerNodeKey.getWorkerNodeKey-1"><span class="tsd-kind-call-signature">get<wbr/>Worker<wbr/>Node<wbr/>Key</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">worker</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><a href="#getWorkerNodeKey.getWorkerNodeKey-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 622<li class="tsd-description">
623<div class="tsd-comment tsd-typography"><p>Gets the given worker its worker node key.</p>
6c525543 624</div>
625<div class="tsd-parameters">
626<h4 class="tsd-parameters-title">Parameters</h4>
627<ul class="tsd-parameter-list">
628<li>
3bd6a82e 629<h5><span class="tsd-kind-parameter">worker</span>: <span class="tsd-signature-type tsd-kind-type-parameter">Worker</span></h5>
6c525543 630<div class="tsd-comment tsd-typography"><p>The worker.</p>
631</div></li></ul></div>
fab6d3b5 632<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><p>The worker node key if the worker is found in the pool worker nodes, <code>-1</code> otherwise.</p>
633<aside class="tsd-sources">
6c525543 634<ul>
ccb7d1a7 635<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L246">src/pools/abstract-pool.ts:246</a></li></ul></aside></li></ul></section>
3bd6a82e 636<section class="tsd-panel tsd-member tsd-is-protected"><a id="internalBusy" class="tsd-anchor"></a>
6c525543 637<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>internal<wbr/>Busy</span><a href="#internalBusy" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 638<ul class="tsd-signatures tsd-is-protected">
8d1797ad 639<li class="tsd-signature tsd-anchor-link" id="internalBusy.internalBusy-1"><span class="tsd-kind-call-signature">internal<wbr/>Busy</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#internalBusy.internalBusy-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 640<li class="tsd-description">
641<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
642<ul>
ccb7d1a7 643<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L338">src/pools/abstract-pool.ts:338</a></li></ul></aside></li></ul></section>
3bd6a82e 644<section class="tsd-panel tsd-member tsd-is-protected"><a id="isMain" class="tsd-anchor"></a>
6c525543 645<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <code class="tsd-tag ts-flagAbstract">Abstract</code> <span>is<wbr/>Main</span><a href="#isMain" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 646<ul class="tsd-signatures tsd-is-protected">
8d1797ad 647<li class="tsd-signature tsd-anchor-link" id="isMain.isMain-1"><span class="tsd-kind-call-signature">is<wbr/>Main</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#isMain.isMain-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 648<li class="tsd-description">
649<div class="tsd-comment tsd-typography"><p>Should return whether the worker is the main worker or not.</p>
650</div>
651<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
652<ul>
ccb7d1a7 653<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L411">src/pools/abstract-pool.ts:411</a></li></ul></aside></li></ul></section>
3bd6a82e 654<section class="tsd-panel tsd-member tsd-is-private"><a id="pushWorkerNode" class="tsd-anchor"></a>
6c525543 655<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>push<wbr/>Worker<wbr/>Node</span><a href="#pushWorkerNode" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 656<ul class="tsd-signatures tsd-is-private">
8d1797ad 657<li class="tsd-signature tsd-anchor-link" id="pushWorkerNode.pushWorkerNode-1"><span class="tsd-kind-call-signature">push<wbr/>Worker<wbr/>Node</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">worker</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><a href="#pushWorkerNode.pushWorkerNode-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 658<li class="tsd-description">
659<div class="tsd-comment tsd-typography"><p>Pushes the given worker in the pool worker nodes.</p>
6c525543 660</div>
661<div class="tsd-parameters">
662<h4 class="tsd-parameters-title">Parameters</h4>
663<ul class="tsd-parameter-list">
664<li>
3bd6a82e 665<h5><span class="tsd-kind-parameter">worker</span>: <span class="tsd-signature-type tsd-kind-type-parameter">Worker</span></h5>
6c525543 666<div class="tsd-comment tsd-typography"><p>The worker.</p>
667</div></li></ul></div>
fab6d3b5 668<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><p>The worker nodes length.</p>
669<aside class="tsd-sources">
6c525543 670<ul>
ccb7d1a7 671<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L664">src/pools/abstract-pool.ts:664</a></li></ul></aside></li></ul></section>
3bd6a82e 672<section class="tsd-panel tsd-member tsd-is-protected"><a id="registerWorkerMessageListener" class="tsd-anchor"></a>
6c525543 673<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <code class="tsd-tag ts-flagAbstract">Abstract</code> <span>register<wbr/>Worker<wbr/>Message<wbr/>Listener</span><a href="#registerWorkerMessageListener" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 674<ul class="tsd-signatures tsd-is-protected">
8d1797ad 675<li class="tsd-signature tsd-anchor-link" id="registerWorkerMessageListener.registerWorkerMessageListener-1"><span class="tsd-kind-call-signature">register<wbr/>Worker<wbr/>Message<wbr/>Listener</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Message</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">worker</span>, <span class="tsd-kind-parameter">listener</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#registerWorkerMessageListener.registerWorkerMessageListener-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 676<li class="tsd-description">
677<div class="tsd-comment tsd-typography"><p>Registers a listener callback on the given worker.</p>
678</div>
fab6d3b5 679<section class="tsd-panel">
6c525543 680<h4>Type Parameters</h4>
fab6d3b5 681<ul class="tsd-type-parameter-list">
6c525543 682<li>
3bd6a82e 683<h4><span class="tsd-kind-type-parameter">Message</span></h4></li></ul></section>
6c525543 684<div class="tsd-parameters">
685<h4 class="tsd-parameters-title">Parameters</h4>
686<ul class="tsd-parameter-list">
687<li>
3bd6a82e 688<h5><span class="tsd-kind-parameter">worker</span>: <span class="tsd-signature-type tsd-kind-type-parameter">Worker</span></h5>
6c525543 689<div class="tsd-comment tsd-typography"><p>The worker which should register a listener.</p>
690</div></li>
691<li>
3bd6a82e 692<h5><span class="tsd-kind-parameter">listener</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">message</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span></h5>
6c525543 693<div class="tsd-comment tsd-typography"><p>The message listener callback.</p>
694</div>
695<ul class="tsd-parameters">
696<li class="tsd-parameter-signature">
3bd6a82e 697<ul class="tsd-signatures">
698<li class="tsd-signature"><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">message</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
6c525543 699<li class="tsd-description">
700<div class="tsd-parameters">
701<h4 class="tsd-parameters-title">Parameters</h4>
702<ul class="tsd-parameter-list">
703<li>
2c94c3a5 704<h5><span class="tsd-kind-parameter">message</span>: <a href="../interfaces/MessageValue.html" class="tsd-signature-type tsd-kind-interface">MessageValue</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Message</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type ">Worker</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type ">MessagePort</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
6c525543 705<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></li></ul></div>
706<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
707<ul>
ccb7d1a7 708<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L538">src/pools/abstract-pool.ts:538</a></li></ul></aside></li></ul></section>
3bd6a82e 709<section class="tsd-panel tsd-member tsd-is-private"><a id="removeWorkerNode" class="tsd-anchor"></a>
6c525543 710<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>remove<wbr/>Worker<wbr/>Node</span><a href="#removeWorkerNode" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 711<ul class="tsd-signatures tsd-is-private">
8d1797ad 712<li class="tsd-signature tsd-anchor-link" id="removeWorkerNode.removeWorkerNode-1"><span class="tsd-kind-call-signature">remove<wbr/>Worker<wbr/>Node</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">worker</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#removeWorkerNode.removeWorkerNode-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 713<li class="tsd-description">
714<div class="tsd-comment tsd-typography"><p>Removes the given worker from the pool worker nodes.</p>
715</div>
716<div class="tsd-parameters">
717<h4 class="tsd-parameters-title">Parameters</h4>
718<ul class="tsd-parameter-list">
719<li>
3bd6a82e 720<h5><span class="tsd-kind-parameter">worker</span>: <span class="tsd-signature-type tsd-kind-type-parameter">Worker</span></h5>
6c525543 721<div class="tsd-comment tsd-typography"><p>The worker.</p>
722</div></li></ul></div>
723<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
724<ul>
ccb7d1a7 725<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L710">src/pools/abstract-pool.ts:710</a></li></ul></aside></li></ul></section>
3bd6a82e 726<section class="tsd-panel tsd-member tsd-is-protected"><a id="sendToWorker" class="tsd-anchor"></a>
6c525543 727<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <code class="tsd-tag ts-flagAbstract">Abstract</code> <span>send<wbr/>To<wbr/>Worker</span><a href="#sendToWorker" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 728<ul class="tsd-signatures tsd-is-protected">
8d1797ad 729<li class="tsd-signature tsd-anchor-link" id="sendToWorker.sendToWorker-1"><span class="tsd-kind-call-signature">send<wbr/>To<wbr/>Worker</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">worker</span>, <span class="tsd-kind-parameter">message</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#sendToWorker.sendToWorker-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 730<li class="tsd-description">
731<div class="tsd-comment tsd-typography"><p>Sends a message to the given worker.</p>
732</div>
733<div class="tsd-parameters">
734<h4 class="tsd-parameters-title">Parameters</h4>
735<ul class="tsd-parameter-list">
736<li>
3bd6a82e 737<h5><span class="tsd-kind-parameter">worker</span>: <span class="tsd-signature-type tsd-kind-type-parameter">Worker</span></h5>
6c525543 738<div class="tsd-comment tsd-typography"><p>The worker which should receive the message.</p>
739</div></li>
740<li>
2c94c3a5 741<h5><span class="tsd-kind-parameter">message</span>: <a href="../interfaces/MessageValue.html" class="tsd-signature-type tsd-kind-interface">MessageValue</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type ">Worker</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type ">MessagePort</span><span class="tsd-signature-symbol">&gt;</span></h5>
6c525543 742<div class="tsd-comment tsd-typography"><p>The message.</p>
743</div></li></ul></div>
744<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
745<ul>
ccb7d1a7 746<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L527">src/pools/abstract-pool.ts:527</a></li></ul></aside></li></ul></section>
3bd6a82e 747<section class="tsd-panel tsd-member"><a id="setTasksQueueOptions" class="tsd-anchor"></a>
6047493a 748<h3 class="tsd-anchor-link"><span>set<wbr/>Tasks<wbr/>Queue<wbr/>Options</span><a href="#setTasksQueueOptions" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 749<ul class="tsd-signatures">
8d1797ad 750<li class="tsd-signature tsd-anchor-link" id="setTasksQueueOptions.setTasksQueueOptions-1"><span class="tsd-kind-call-signature">set<wbr/>Tasks<wbr/>Queue<wbr/>Options</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">tasksQueueOptions</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#setTasksQueueOptions.setTasksQueueOptions-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6047493a 751<li class="tsd-description">
752<div class="tsd-comment tsd-typography"><p>Sets the worker tasks queue options in this pool.</p>
753</div>
754<div class="tsd-parameters">
755<h4 class="tsd-parameters-title">Parameters</h4>
756<ul class="tsd-parameter-list">
757<li>
8d1797ad 758<h5><span class="tsd-kind-parameter">tasksQueueOptions</span>: <a href="../interfaces/TasksQueueOptions.html" class="tsd-signature-type tsd-kind-interface">TasksQueueOptions</a></h5>
6047493a 759<div class="tsd-comment tsd-typography"><p>The worker tasks queue options.</p>
760</div></li></ul></div>
761<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
3bd6a82e 762<p>Implementation of <a href="../interfaces/IPool.html">IPool</a>.<a href="../interfaces/IPool.html#setTasksQueueOptions">setTasksQueueOptions</a></p>
6047493a 763<ul>
ccb7d1a7 764<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L306">src/pools/abstract-pool.ts:306</a></li></ul></aside></li></ul></section>
3bd6a82e 765<section class="tsd-panel tsd-member"><a id="setWorkerChoiceStrategy" class="tsd-anchor"></a>
6c525543 766<h3 class="tsd-anchor-link"><span>set<wbr/>Worker<wbr/>Choice<wbr/>Strategy</span><a href="#setWorkerChoiceStrategy" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 767<ul class="tsd-signatures">
8d1797ad 768<li class="tsd-signature tsd-anchor-link" id="setWorkerChoiceStrategy.setWorkerChoiceStrategy-1"><span class="tsd-kind-call-signature">set<wbr/>Worker<wbr/>Choice<wbr/>Strategy</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">workerChoiceStrategy</span>, <span class="tsd-kind-parameter">workerChoiceStrategyOptions</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#setWorkerChoiceStrategy.setWorkerChoiceStrategy-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 769<li class="tsd-description">
770<div class="tsd-comment tsd-typography"><p>Sets the worker choice strategy in this pool.</p>
771</div>
772<div class="tsd-parameters">
773<h4 class="tsd-parameters-title">Parameters</h4>
774<ul class="tsd-parameter-list">
775<li>
811dc01f 776<h5><span class="tsd-kind-parameter">workerChoiceStrategy</span>: <span class="tsd-signature-type">&quot;ROUND_ROBIN&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;LEAST_USED&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;LEAST_BUSY&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;FAIR_SHARE&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;WEIGHTED_ROUND_ROBIN&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;INTERLEAVED_WEIGHTED_ROUND_ROBIN&quot;</span></h5>
6c525543 777<div class="tsd-comment tsd-typography"><p>The worker choice strategy.</p>
a8aeac44 778</div></li>
779<li>
8d1797ad 780<h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">workerChoiceStrategyOptions</span>: <a href="../interfaces/WorkerChoiceStrategyOptions.html" class="tsd-signature-type tsd-kind-interface">WorkerChoiceStrategyOptions</a></h5>
a8aeac44 781<div class="tsd-comment tsd-typography"><p>The worker choice strategy options.</p>
6c525543 782</div></li></ul></div>
783<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
3bd6a82e 784<p>Implementation of <a href="../interfaces/IPool.html">IPool</a>.<a href="../interfaces/IPool.html#setWorkerChoiceStrategy">setWorkerChoiceStrategy</a></p>
6c525543 785<ul>
ccb7d1a7 786<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L253">src/pools/abstract-pool.ts:253</a></li></ul></aside></li></ul></section>
3bd6a82e 787<section class="tsd-panel tsd-member"><a id="setWorkerChoiceStrategyOptions" class="tsd-anchor"></a>
6047493a 788<h3 class="tsd-anchor-link"><span>set<wbr/>Worker<wbr/>Choice<wbr/>Strategy<wbr/>Options</span><a href="#setWorkerChoiceStrategyOptions" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 789<ul class="tsd-signatures">
8d1797ad 790<li class="tsd-signature tsd-anchor-link" id="setWorkerChoiceStrategyOptions.setWorkerChoiceStrategyOptions-1"><span class="tsd-kind-call-signature">set<wbr/>Worker<wbr/>Choice<wbr/>Strategy<wbr/>Options</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">workerChoiceStrategyOptions</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#setWorkerChoiceStrategyOptions.setWorkerChoiceStrategyOptions-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6047493a 791<li class="tsd-description">
792<div class="tsd-comment tsd-typography"><p>Sets the worker choice strategy options in this pool.</p>
793</div>
794<div class="tsd-parameters">
795<h4 class="tsd-parameters-title">Parameters</h4>
796<ul class="tsd-parameter-list">
797<li>
8d1797ad 798<h5><span class="tsd-kind-parameter">workerChoiceStrategyOptions</span>: <a href="../interfaces/WorkerChoiceStrategyOptions.html" class="tsd-signature-type tsd-kind-interface">WorkerChoiceStrategyOptions</a></h5>
6047493a 799<div class="tsd-comment tsd-typography"><p>The worker choice strategy options.</p>
800</div></li></ul></div>
801<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
3bd6a82e 802<p>Implementation of <a href="../interfaces/IPool.html">IPool</a>.<a href="../interfaces/IPool.html#setWorkerChoiceStrategyOptions">setWorkerChoiceStrategyOptions</a></p>
6047493a 803<ul>
ccb7d1a7 804<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L283">src/pools/abstract-pool.ts:283</a></li></ul></aside></li></ul></section>
3bd6a82e 805<section class="tsd-panel tsd-member tsd-is-private"><a id="setWorkerNode" class="tsd-anchor"></a>
6c525543 806<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>set<wbr/>Worker<wbr/>Node</span><a href="#setWorkerNode" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 807<ul class="tsd-signatures tsd-is-private">
8d1797ad 808<li class="tsd-signature tsd-anchor-link" id="setWorkerNode.setWorkerNode-1"><span class="tsd-kind-call-signature">set<wbr/>Worker<wbr/>Node</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">workerNodeKey</span>, <span class="tsd-kind-parameter">worker</span>, <span class="tsd-kind-parameter">tasksUsage</span>, <span class="tsd-kind-parameter">tasksQueue</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#setWorkerNode.setWorkerNode-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 809<li class="tsd-description">
810<div class="tsd-comment tsd-typography"><p>Sets the given worker in the pool worker nodes.</p>
811</div>
812<div class="tsd-parameters">
813<h4 class="tsd-parameters-title">Parameters</h4>
814<ul class="tsd-parameter-list">
815<li>
3bd6a82e 816<h5><span class="tsd-kind-parameter">workerNodeKey</span>: <span class="tsd-signature-type">number</span></h5>
6c525543 817<div class="tsd-comment tsd-typography"><p>The worker node key.</p>
818</div></li>
819<li>
3bd6a82e 820<h5><span class="tsd-kind-parameter">worker</span>: <span class="tsd-signature-type tsd-kind-type-parameter">Worker</span></h5>
6c525543 821<div class="tsd-comment tsd-typography"><p>The worker.</p>
822</div></li>
823<li>
8d1797ad 824<h5><span class="tsd-kind-parameter">tasksUsage</span>: <a href="../interfaces/TasksUsage.html" class="tsd-signature-type tsd-kind-interface">TasksUsage</a></h5>
6c525543 825<div class="tsd-comment tsd-typography"><p>The worker tasks usage.</p>
826</div></li>
827<li>
3a592a12 828<h5><span class="tsd-kind-parameter">tasksQueue</span>: <a href="Queue.html" class="tsd-signature-type tsd-kind-class">Queue</a><span class="tsd-signature-symbol">&lt;</span><a href="../interfaces/Task.html" class="tsd-signature-type tsd-kind-interface">Task</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span></h5>
6c525543 829<div class="tsd-comment tsd-typography"><p>The worker task queue.</p>
830</div></li></ul></div>
831<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
832<ul>
ccb7d1a7 833<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L692">src/pools/abstract-pool.ts:692</a></li></ul></aside></li></ul></section>
3bd6a82e 834<section class="tsd-panel tsd-member tsd-is-private"><a id="setWorkerNodeTasksUsage" class="tsd-anchor"></a>
6c525543 835<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>set<wbr/>Worker<wbr/>Node<wbr/>Tasks<wbr/>Usage</span><a href="#setWorkerNodeTasksUsage" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 836<ul class="tsd-signatures tsd-is-private">
8d1797ad 837<li class="tsd-signature tsd-anchor-link" id="setWorkerNodeTasksUsage.setWorkerNodeTasksUsage-1"><span class="tsd-kind-call-signature">set<wbr/>Worker<wbr/>Node<wbr/>Tasks<wbr/>Usage</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">workerNode</span>, <span class="tsd-kind-parameter">tasksUsage</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#setWorkerNodeTasksUsage.setWorkerNodeTasksUsage-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 838<li class="tsd-description">
839<div class="tsd-comment tsd-typography"><p>Sets the given worker node its tasks usage in the pool.</p>
840</div>
841<div class="tsd-parameters">
842<h4 class="tsd-parameters-title">Parameters</h4>
843<ul class="tsd-parameter-list">
844<li>
8d1797ad 845<h5><span class="tsd-kind-parameter">workerNode</span>: <a href="../interfaces/WorkerNode.html" class="tsd-signature-type tsd-kind-interface">WorkerNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Worker</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">&gt;</span></h5>
6c525543 846<div class="tsd-comment tsd-typography"><p>The worker node.</p>
847</div></li>
848<li>
8d1797ad 849<h5><span class="tsd-kind-parameter">tasksUsage</span>: <a href="../interfaces/TasksUsage.html" class="tsd-signature-type tsd-kind-interface">TasksUsage</a></h5>
6c525543 850<div class="tsd-comment tsd-typography"><p>The worker node tasks usage.</p>
851</div></li></ul></div>
852<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
853<ul>
ccb7d1a7 854<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L651">src/pools/abstract-pool.ts:651</a></li></ul></aside></li></ul></section>
3bd6a82e 855<section class="tsd-panel tsd-member tsd-is-protected"><a id="setupHook" class="tsd-anchor"></a>
6c525543 856<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>setup<wbr/>Hook</span><a href="#setupHook" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 857<ul class="tsd-signatures tsd-is-protected">
8d1797ad 858<li class="tsd-signature tsd-anchor-link" id="setupHook.setupHook-1"><span class="tsd-kind-call-signature">setup<wbr/>Hook</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#setupHook.setupHook-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 859<li class="tsd-description">
860<div class="tsd-comment tsd-typography"><p>Setup hook to execute code before worker node are created in the abstract constructor.
861Can be overridden</p>
862</div>
863<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
864<ul>
ccb7d1a7 865<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L404">src/pools/abstract-pool.ts:404</a></li></ul></aside></li></ul></section>
3bd6a82e 866<section class="tsd-panel tsd-member tsd-is-private"><a id="tasksQueueSize" class="tsd-anchor"></a>
6c525543 867<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>tasks<wbr/>Queue<wbr/>Size</span><a href="#tasksQueueSize" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 868<ul class="tsd-signatures tsd-is-private">
8d1797ad 869<li class="tsd-signature tsd-anchor-link" id="tasksQueueSize.tasksQueueSize-1"><span class="tsd-kind-call-signature">tasks<wbr/>Queue<wbr/>Size</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">workerNodeKey</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><a href="#tasksQueueSize.tasksQueueSize-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 870<li class="tsd-description">
871<div class="tsd-parameters">
872<h4 class="tsd-parameters-title">Parameters</h4>
873<ul class="tsd-parameter-list">
874<li>
3bd6a82e 875<h5><span class="tsd-kind-parameter">workerNodeKey</span>: <span class="tsd-signature-type">number</span></h5></li></ul></div>
6c525543 876<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
877<ul>
ccb7d1a7 878<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L731">src/pools/abstract-pool.ts:731</a></li></ul></aside></li></ul></section>
811dc01f 879<section class="tsd-panel tsd-member tsd-is-private"><a id="updateRunTimeTasksUsage" class="tsd-anchor"></a>
880<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>update<wbr/>Run<wbr/>Time<wbr/>Tasks<wbr/>Usage</span><a href="#updateRunTimeTasksUsage" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
881<ul class="tsd-signatures tsd-is-private">
882<li class="tsd-signature tsd-anchor-link" id="updateRunTimeTasksUsage.updateRunTimeTasksUsage-1"><span class="tsd-kind-call-signature">update<wbr/>Run<wbr/>Time<wbr/>Tasks<wbr/>Usage</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">workerTasksUsage</span>, <span class="tsd-kind-parameter">message</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#updateRunTimeTasksUsage.updateRunTimeTasksUsage-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
883<li class="tsd-description">
884<div class="tsd-parameters">
885<h4 class="tsd-parameters-title">Parameters</h4>
886<ul class="tsd-parameter-list">
887<li>
888<h5><span class="tsd-kind-parameter">workerTasksUsage</span>: <a href="../interfaces/TasksUsage.html" class="tsd-signature-type tsd-kind-interface">TasksUsage</a></h5></li>
889<li>
890<h5><span class="tsd-kind-parameter">message</span>: <a href="../interfaces/MessageValue.html" class="tsd-signature-type tsd-kind-interface">MessageValue</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type ">Worker</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type ">MessagePort</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
891<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
892<ul>
ccb7d1a7 893<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L445">src/pools/abstract-pool.ts:445</a></li></ul></aside></li></ul></section>
811dc01f 894<section class="tsd-panel tsd-member tsd-is-private"><a id="updateWaitTimeTasksUsage" class="tsd-anchor"></a>
895<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>update<wbr/>Wait<wbr/>Time<wbr/>Tasks<wbr/>Usage</span><a href="#updateWaitTimeTasksUsage" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
896<ul class="tsd-signatures tsd-is-private">
897<li class="tsd-signature tsd-anchor-link" id="updateWaitTimeTasksUsage.updateWaitTimeTasksUsage-1"><span class="tsd-kind-call-signature">update<wbr/>Wait<wbr/>Time<wbr/>Tasks<wbr/>Usage</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">workerTasksUsage</span>, <span class="tsd-kind-parameter">message</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#updateWaitTimeTasksUsage.updateWaitTimeTasksUsage-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
898<li class="tsd-description">
899<div class="tsd-parameters">
900<h4 class="tsd-parameters-title">Parameters</h4>
901<ul class="tsd-parameter-list">
902<li>
903<h5><span class="tsd-kind-parameter">workerTasksUsage</span>: <a href="../interfaces/TasksUsage.html" class="tsd-signature-type tsd-kind-interface">TasksUsage</a></h5></li>
904<li>
905<h5><span class="tsd-kind-parameter">message</span>: <a href="../interfaces/MessageValue.html" class="tsd-signature-type tsd-kind-interface">MessageValue</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type ">Worker</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type ">MessagePort</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
906<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
907<ul>
ccb7d1a7 908<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L468">src/pools/abstract-pool.ts:468</a></li></ul></aside></li></ul></section>
3bd6a82e 909<section class="tsd-panel tsd-member tsd-is-protected"><a id="workerListener" class="tsd-anchor"></a>
6c525543 910<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>worker<wbr/>Listener</span><a href="#workerListener" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
3bd6a82e 911<ul class="tsd-signatures tsd-is-protected">
8d1797ad 912<li class="tsd-signature tsd-anchor-link" id="workerListener.workerListener-1"><span class="tsd-kind-call-signature">worker<wbr/>Listener</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">message</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span><a href="#workerListener.workerListener-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
6c525543 913<li class="tsd-description">
914<div class="tsd-comment tsd-typography"><p>This function is the listener registered for each worker message.</p>
6c525543 915</div>
fab6d3b5 916<h4 class="tsd-returns-title">Returns <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">message</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span></h4><p>The listener function to execute when a message is received from a worker.</p>
917
6c525543 918<ul class="tsd-parameters">
919<li class="tsd-parameter-signature">
3bd6a82e 920<ul class="tsd-signatures">
921<li class="tsd-signature" id="workerListener.workerListener-1.__type.__type-1"><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">message</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
6c525543 922<li class="tsd-description">
923<div class="tsd-comment tsd-typography"><p>This function is the listener registered for each worker message.</p>
6c525543 924</div>
925<div class="tsd-parameters">
926<h4 class="tsd-parameters-title">Parameters</h4>
927<ul class="tsd-parameter-list">
928<li>
2c94c3a5 929<h5><span class="tsd-kind-parameter">message</span>: <a href="../interfaces/MessageValue.html" class="tsd-signature-type tsd-kind-interface">MessageValue</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type ">Worker</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type ">MessagePort</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
fab6d3b5 930<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><p>The listener function to execute when a message is received from a worker.</p>
931</li></ul></li></ul><aside class="tsd-sources">
6c525543 932<ul>
ccb7d1a7 933<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/414339e/src/pools/abstract-pool.ts#L594">src/pools/abstract-pool.ts:594</a></li></ul></aside></li></ul></section></section></div>
6c525543 934<div class="col-sidebar">
935<div class="page-menu">
936<div class="tsd-navigation settings">
937<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">
938<h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><path d="M4.93896 8.531L12 15.591L19.061 8.531L16.939 6.409L12 11.349L7.06098 6.409L4.93896 8.531Z" fill="var(--color-text)"></path></svg>Settings</h3></summary>
939<div class="tsd-accordion-details">
940<div class="tsd-filter-visibility">
941<h4 class="uppercase">Member Visibility</h4><form>
942<ul id="tsd-filter-options">
943<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li>
944<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-private" name="private"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Private</span></label></li>
945<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li>
946<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></form></div>
947<div class="tsd-theme-toggle">
3bd6a82e 948<h4 class="uppercase">Theme</h4><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div>
6c525543 949<details open class="tsd-index-accordion tsd-page-navigation"><summary class="tsd-accordion-summary">
950<h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><path d="M4.93896 8.531L12 15.591L19.061 8.531L16.939 6.409L12 11.349L7.06098 6.409L4.93896 8.531Z" fill="var(--color-text)"></path></svg>On This Page</h3></summary>
951<div class="tsd-accordion-details">
952<ul>
3bd6a82e 953<li><a href="#constructor" class=""><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-512-path"></use><use href="#icon-512-text"></use></svg><span>constructor</span></a></li>
954<li><a href="#emitter" class=""><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-1024-path"></use><use href="#icon-1024-text"></use></svg><span>emitter</span></a></li>
955<li><a href="#filePath" class=""><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-1024-path"></use><use href="#icon-1024-text"></use></svg><span>file<wbr/>Path</span></a></li>
956<li><a href="#numberOfWorkers" class=""><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-1024-path"></use><use href="#icon-1024-text"></use></svg><span>number<wbr/>Of<wbr/>Workers</span></a></li>
957<li><a href="#opts" class=""><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-1024-path"></use><use href="#icon-1024-text"></use></svg><span>opts</span></a></li>
958<li><a href="#promiseResponseMap" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-1024-path"></use><use href="#icon-1024-text"></use></svg><span>promise<wbr/>Response<wbr/>Map</span></a></li>
959<li><a href="#workerChoiceStrategyContext" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-1024-path"></use><use href="#icon-1024-text"></use></svg><span>worker<wbr/>Choice<wbr/>Strategy<wbr/>Context</span></a></li>
960<li><a href="#workerNodes" class=""><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-1024-path"></use><use href="#icon-1024-text"></use></svg><span>worker<wbr/>Nodes</span></a></li>
961<li><a href="#busy" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-262144-path"></use><use href="#icon-262144-text"></use></svg><span>busy</span></a></li>
962<li><a href="#full" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-262144-path"></use><use href="#icon-262144-text"></use></svg><span>full</span></a></li>
963<li><a href="#numberOfQueuedTasks" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-262144-path"></use><use href="#icon-262144-text"></use></svg><span>number<wbr/>Of<wbr/>Queued<wbr/>Tasks</span></a></li>
964<li><a href="#numberOfRunningTasks" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-262144-path"></use><use href="#icon-262144-text"></use></svg><span>number<wbr/>Of<wbr/>Running<wbr/>Tasks</span></a></li>
2c94c3a5 965<li><a href="#size" class=""><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-262144-path"></use><use href="#icon-262144-text"></use></svg><span>size</span></a></li>
3bd6a82e 966<li><a href="#type" class=""><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-262144-path"></use><use href="#icon-262144-text"></use></svg><span>type</span></a></li>
967<li><a href="#afterTaskExecutionHook" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>after<wbr/>Task<wbr/>Execution<wbr/>Hook</span></a></li>
968<li><a href="#afterWorkerSetup" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>after<wbr/>Worker<wbr/>Setup</span></a></li>
969<li><a href="#beforeTaskExecutionHook" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>before<wbr/>Task<wbr/>Execution<wbr/>Hook</span></a></li>
970<li><a href="#buildTasksQueueOptions" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>build<wbr/>Tasks<wbr/>Queue<wbr/>Options</span></a></li>
971<li><a href="#checkAndEmitEvents" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>check<wbr/>And<wbr/>Emit<wbr/>Events</span></a></li>
972<li><a href="#checkFilePath" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>check<wbr/>File<wbr/>Path</span></a></li>
973<li><a href="#checkNumberOfWorkers" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>check<wbr/>Number<wbr/>Of<wbr/>Workers</span></a></li>
974<li><a href="#checkPoolOptions" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>check<wbr/>Pool<wbr/>Options</span></a></li>
975<li><a href="#checkValidTasksQueueOptions" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>check<wbr/>Valid<wbr/>Tasks<wbr/>Queue<wbr/>Options</span></a></li>
976<li><a href="#checkValidWorkerChoiceStrategy" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>check<wbr/>Valid<wbr/>Worker<wbr/>Choice<wbr/>Strategy</span></a></li>
2c94c3a5 977<li><a href="#checkValidWorkerChoiceStrategyOptions" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>check<wbr/>Valid<wbr/>Worker<wbr/>Choice<wbr/>Strategy<wbr/>Options</span></a></li>
3bd6a82e 978<li><a href="#chooseWorkerNode" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>choose<wbr/>Worker<wbr/>Node</span></a></li>
979<li><a href="#createAndSetupWorker" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>create<wbr/>And<wbr/>Setup<wbr/>Worker</span></a></li>
980<li><a href="#createWorker" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>create<wbr/>Worker</span></a></li>
981<li><a href="#dequeueTask" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>dequeue<wbr/>Task</span></a></li>
982<li><a href="#destroy" class=""><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>destroy</span></a></li>
983<li><a href="#destroyWorker" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>destroy<wbr/>Worker</span></a></li>
984<li><a href="#enableTasksQueue" class=""><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>enable<wbr/>Tasks<wbr/>Queue</span></a></li>
985<li><a href="#enqueueTask" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>enqueue<wbr/>Task</span></a></li>
986<li><a href="#execute" class=""><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>execute</span></a></li>
987<li><a href="#executeTask" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>execute<wbr/>Task</span></a></li>
3bd6a82e 988<li><a href="#flushTasksQueue" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>flush<wbr/>Tasks<wbr/>Queue</span></a></li>
3bd6a82e 989<li><a href="#flushTasksQueues" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>flush<wbr/>Tasks<wbr/>Queues</span></a></li>
990<li><a href="#getWorkerNodeKey" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>get<wbr/>Worker<wbr/>Node<wbr/>Key</span></a></li>
3bd6a82e 991<li><a href="#internalBusy" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>internal<wbr/>Busy</span></a></li>
992<li><a href="#isMain" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>is<wbr/>Main</span></a></li>
993<li><a href="#pushWorkerNode" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>push<wbr/>Worker<wbr/>Node</span></a></li>
994<li><a href="#registerWorkerMessageListener" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>register<wbr/>Worker<wbr/>Message<wbr/>Listener</span></a></li>
995<li><a href="#removeWorkerNode" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>remove<wbr/>Worker<wbr/>Node</span></a></li>
996<li><a href="#sendToWorker" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>send<wbr/>To<wbr/>Worker</span></a></li>
997<li><a href="#setTasksQueueOptions" class=""><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>set<wbr/>Tasks<wbr/>Queue<wbr/>Options</span></a></li>
998<li><a href="#setWorkerChoiceStrategy" class=""><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>set<wbr/>Worker<wbr/>Choice<wbr/>Strategy</span></a></li>
999<li><a href="#setWorkerChoiceStrategyOptions" class=""><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>set<wbr/>Worker<wbr/>Choice<wbr/>Strategy<wbr/>Options</span></a></li>
1000<li><a href="#setWorkerNode" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>set<wbr/>Worker<wbr/>Node</span></a></li>
1001<li><a href="#setWorkerNodeTasksUsage" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>set<wbr/>Worker<wbr/>Node<wbr/>Tasks<wbr/>Usage</span></a></li>
1002<li><a href="#setupHook" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>setup<wbr/>Hook</span></a></li>
1003<li><a href="#tasksQueueSize" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>tasks<wbr/>Queue<wbr/>Size</span></a></li>
811dc01f 1004<li><a href="#updateRunTimeTasksUsage" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>update<wbr/>Run<wbr/>Time<wbr/>Tasks<wbr/>Usage</span></a></li>
1005<li><a href="#updateWaitTimeTasksUsage" class="tsd-is-private"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>update<wbr/>Wait<wbr/>Time<wbr/>Tasks<wbr/>Usage</span></a></li>
3bd6a82e 1006<li><a href="#workerListener" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>worker<wbr/>Listener</span></a></li></ul></div></details></div>
6c525543 1007<div class="site-menu">
1008<nav class="tsd-navigation"><a href="../index.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-namespace)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6" id="icon-4-path"></rect><path d="M9.33 16V7.24H10.77L13.446 14.74C13.43 14.54 13.41 14.296 13.386 14.008C13.37 13.712 13.354 13.404 13.338 13.084C13.33 12.756 13.326 12.448 13.326 12.16V7.24H14.37V16H12.93L10.266 8.5C10.282 8.692 10.298 8.936 10.314 9.232C10.33 9.52 10.342 9.828 10.35 10.156C10.366 10.476 10.374 10.784 10.374 11.08V16H9.33Z" fill="var(--color-text)" id="icon-4-text"></path></svg><span>poolifier</span></a>
1009<ul class="tsd-small-nested-navigation">
3bd6a82e 1010<li><a href="../enums/PoolType.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-enum)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6" id="icon-8-path"></rect><path d="M9.45 16V7.24H14.49V8.224H10.518V10.936H14.07V11.908H10.518V15.016H14.49V16H9.45Z" fill="var(--color-text)" id="icon-8-text"></path></svg><span>Pool<wbr/>Type</span></a></li>
1011<li><a href="AbstractPool.html" class="current"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-class)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6" id="icon-128-path"></rect><path d="M11.898 16.1201C11.098 16.1201 10.466 15.8961 10.002 15.4481C9.53803 15.0001 9.30603 14.3841 9.30603 13.6001V9.64012C9.30603 8.85612 9.53803 8.24012 10.002 7.79212C10.466 7.34412 11.098 7.12012 11.898 7.12012C12.682 7.12012 13.306 7.34812 13.77 7.80412C14.234 8.25212 14.466 8.86412 14.466 9.64012H13.386C13.386 9.14412 13.254 8.76412 12.99 8.50012C12.734 8.22812 12.37 8.09212 11.898 8.09212C11.426 8.09212 11.054 8.22412 10.782 8.48812C10.518 8.75212 10.386 9.13212 10.386 9.62812V13.6001C10.386 14.0961 10.518 14.4801 10.782 14.7521C11.054 15.0161 11.426 15.1481 11.898 15.1481C12.37 15.1481 12.734 15.0161 12.99 14.7521C13.254 14.4801 13.386 14.0961 13.386 13.6001H14.466C14.466 14.3761 14.234 14.9921 13.77 15.4481C13.306 15.8961 12.682 16.1201 11.898 16.1201Z" fill="var(--color-text)" id="icon-128-text"></path></svg><span>Abstract<wbr/>Pool</span></a></li>
1012<li><a href="AbstractWorker.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-128-path"></use><use href="#icon-128-text"></use></svg><span>Abstract<wbr/>Worker</span></a></li>
1013<li><a href="CircularArray.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-128-path"></use><use href="#icon-128-text"></use></svg><span>Circular<wbr/>Array</span></a></li>
1014<li><a href="ClusterWorker.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-128-path"></use><use href="#icon-128-text"></use></svg><span>Cluster<wbr/>Worker</span></a></li>
1015<li><a href="DynamicClusterPool.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-128-path"></use><use href="#icon-128-text"></use></svg><span>Dynamic<wbr/>Cluster<wbr/>Pool</span></a></li>
1016<li><a href="DynamicThreadPool.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-128-path"></use><use href="#icon-128-text"></use></svg><span>Dynamic<wbr/>Thread<wbr/>Pool</span></a></li>
1017<li><a href="FixedClusterPool.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-128-path"></use><use href="#icon-128-text"></use></svg><span>Fixed<wbr/>Cluster<wbr/>Pool</span></a></li>
1018<li><a href="FixedThreadPool.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-128-path"></use><use href="#icon-128-text"></use></svg><span>Fixed<wbr/>Thread<wbr/>Pool</span></a></li>
1019<li><a href="PoolEmitter.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-128-path"></use><use href="#icon-128-text"></use></svg><span>Pool<wbr/>Emitter</span></a></li>
3a592a12 1020<li><a href="Queue.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-128-path"></use><use href="#icon-128-text"></use></svg><span>Queue</span></a></li>
3bd6a82e 1021<li><a href="ThreadWorker.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-128-path"></use><use href="#icon-128-text"></use></svg><span>Thread<wbr/>Worker</span></a></li>
1022<li><a href="WorkerChoiceStrategyContext.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-128-path"></use><use href="#icon-128-text"></use></svg><span>Worker<wbr/>Choice<wbr/>Strategy<wbr/>Context</span></a></li>
1023<li><a href="../interfaces/ClusterPoolOptions.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-interface)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6" id="icon-256-path"></rect><path d="M9.51 16V15.016H11.298V8.224H9.51V7.24H14.19V8.224H12.402V15.016H14.19V16H9.51Z" fill="var(--color-text)" id="icon-256-text"></path></svg><span>Cluster<wbr/>Pool<wbr/>Options</span></a></li>
1024<li><a href="../interfaces/IPool.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-256-path"></use><use href="#icon-256-text"></use></svg><span>IPool</span></a></li>
1025<li><a href="../interfaces/IWorker.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-256-path"></use><use href="#icon-256-text"></use></svg><span>IWorker</span></a></li>
1026<li><a href="../interfaces/IWorkerChoiceStrategy.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-256-path"></use><use href="#icon-256-text"></use></svg><span>IWorker<wbr/>Choice<wbr/>Strategy</span></a></li>
1027<li><a href="../interfaces/MessageValue.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-256-path"></use><use href="#icon-256-text"></use></svg><span>Message<wbr/>Value</span></a></li>
1028<li><a href="../interfaces/PoolOptions.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-256-path"></use><use href="#icon-256-text"></use></svg><span>Pool<wbr/>Options</span></a></li>
1029<li><a href="../interfaces/PromiseResponseWrapper.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-256-path"></use><use href="#icon-256-text"></use></svg><span>Promise<wbr/>Response<wbr/>Wrapper</span></a></li>
1030<li><a href="../interfaces/RequiredStatistics.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-256-path"></use><use href="#icon-256-text"></use></svg><span>Required<wbr/>Statistics</span></a></li>
1031<li><a href="../interfaces/Task.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-256-path"></use><use href="#icon-256-text"></use></svg><span>Task</span></a></li>
1032<li><a href="../interfaces/TasksQueueOptions.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-256-path"></use><use href="#icon-256-text"></use></svg><span>Tasks<wbr/>Queue<wbr/>Options</span></a></li>
1033<li><a href="../interfaces/TasksUsage.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-256-path"></use><use href="#icon-256-text"></use></svg><span>Tasks<wbr/>Usage</span></a></li>
1034<li><a href="../interfaces/WorkerChoiceStrategyOptions.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-256-path"></use><use href="#icon-256-text"></use></svg><span>Worker<wbr/>Choice<wbr/>Strategy<wbr/>Options</span></a></li>
1035<li><a href="../interfaces/WorkerNode.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-256-path"></use><use href="#icon-256-text"></use></svg><span>Worker<wbr/>Node</span></a></li>
1036<li><a href="../interfaces/WorkerOptions.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-256-path"></use><use href="#icon-256-text"></use></svg><span>Worker<wbr/>Options</span></a></li>
1037<li><a href="../types/Draft.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6" id="icon-4194304-path"></rect><path d="M11.31 16V8.224H8.91V7.24H14.79V8.224H12.39V16H11.31Z" fill="var(--color-text)" id="icon-4194304-text"></path></svg><span>Draft</span></a></li>
1038<li><a href="../types/ErrorHandler.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Error<wbr/>Handler</span></a></li>
1039<li><a href="../types/ExitHandler.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Exit<wbr/>Handler</span></a></li>
1040<li><a href="../types/KillBehavior.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Kill<wbr/>Behavior</span></a></li>
1041<li><a href="../types/MessageHandler.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Message<wbr/>Handler</span></a></li>
1042<li><a href="../types/OnlineHandler.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Online<wbr/>Handler</span></a></li>
1043<li><a href="../types/PoolEvent.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Pool<wbr/>Event</span></a></li>
2c94c3a5 1044<li><a href="../types/TaskFunctions.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Task<wbr/>Functions</span></a></li>
3bd6a82e 1045<li><a href="../types/ThreadWorkerWithMessageChannel.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Thread<wbr/>Worker<wbr/>With<wbr/>Message<wbr/>Channel</span></a></li>
1046<li><a href="../types/WorkerAsyncFunction.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Worker<wbr/>Async<wbr/>Function</span></a></li>
1047<li><a href="../types/WorkerChoiceStrategy.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Worker<wbr/>Choice<wbr/>Strategy</span></a></li>
1048<li><a href="../types/WorkerFunction.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Worker<wbr/>Function</span></a></li>
1049<li><a href="../types/WorkerSyncFunction.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Worker<wbr/>Sync<wbr/>Function</span></a></li>
1050<li><a href="../variables/KillBehaviors.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-variable)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6" id="icon-32-path"></rect><path d="M11.106 16L8.85 7.24H9.966L11.454 13.192C11.558 13.608 11.646 13.996 11.718 14.356C11.79 14.708 11.842 14.976 11.874 15.16C11.906 14.976 11.954 14.708 12.018 14.356C12.09 13.996 12.178 13.608 12.282 13.192L13.758 7.24H14.85L12.582 16H11.106Z" fill="var(--color-text)" id="icon-32-text"></path></svg><span>Kill<wbr/>Behaviors</span></a></li>
1051<li><a href="../variables/PoolEvents.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-32-path"></use><use href="#icon-32-text"></use></svg><span>Pool<wbr/>Events</span></a></li>
1052<li><a href="../variables/WorkerChoiceStrategies.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-32-path"></use><use href="#icon-32-text"></use></svg><span>Worker<wbr/>Choice<wbr/>Strategies</span></a></li></ul></nav></div></div></div>
6c525543 1053<div class="tsd-generator">
1054<p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div>
1055<div class="overlay"></div></body></html>