build(deps-dev): apply updates
[poolifier.git] / docs / classes / DynamicThreadPool.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>DynamicThreadPool | 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">
a76fac14
JB
2<div class="tsd-toolbar-contents container">
3<div class="table-cell" id="tsd-search" data-base="..">
41015374
JB
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>
a76fac14
JB
7<ul class="results">
8<li class="state loading">Preparing search index...</li>
cfc6e8df 9<li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">poolifier</a></div>
41015374 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>
a76fac14 11<div class="container container-main">
ec06e4dd 12<div class="col-content">
a76fac14
JB
13<div class="tsd-page-title">
14<ul class="tsd-breadcrumb">
15<li><a href="../index.html">poolifier</a></li>
16<li><a href="DynamicThreadPool.html">DynamicThreadPool</a></li></ul>
17<h1>Class DynamicThreadPool&lt;Data, Response&gt;</h1></div>
18<section class="tsd-panel tsd-comment">
19<div class="tsd-comment tsd-typography"><p>A thread pool with a dynamic number of threads, but a guaranteed minimum number of threads.</p>
20<p>This thread pool creates new threads when the others are busy, up to the maximum number of threads.
ba92b02f 21When the maximum number of threads is reached and workers are busy, an event is emitted. If you want to listen to this event, use the pool&#39;s <code>emitter</code>.</p>
a76fac14 22
a76fac14
JB
23<h3>Author</h3><p><a href="https://github.com/pioardi">Alessandro Pio Ardizio</a></p>
24
25<h3>Since</h3><p>0.0.1</p>
26</div></section>
27<section class="tsd-panel tsd-type-parameters">
28<h4>Type Parameters</h4>
29<ul class="tsd-type-parameters">
30<li>
3bd6a82e 31<h4><span class="tsd-kind-type-parameter">Data</span> = <span class="tsd-signature-type">unknown</span></h4>
41015374
JB
32<div class="tsd-comment tsd-typography"><p>Type of data sent to the worker. This can only be serializable data.</p>
33</div></li>
a76fac14 34<li>
3bd6a82e 35<h4><span class="tsd-kind-type-parameter">Response</span> = <span class="tsd-signature-type">unknown</span></h4>
e39450c0 36<div class="tsd-comment tsd-typography"><p>Type of execution response. This can only be serializable data.</p>
41015374 37</div></li></ul></section>
a76fac14
JB
38<section class="tsd-panel tsd-hierarchy">
39<h4>Hierarchy</h4>
40<ul class="tsd-hierarchy">
3bd6a82e 41<li><a href="FixedThreadPool.html" class="tsd-signature-type tsd-kind-Class">FixedThreadPool</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 tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span>
a76fac14
JB
42<ul class="tsd-hierarchy">
43<li><span class="target">DynamicThreadPool</span></li></ul></li></ul></section><aside class="tsd-sources">
44<ul>
3bd6a82e 45<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/thread/dynamic.ts#L17">src/pools/thread/dynamic.ts:17</a></li></ul></aside>
a76fac14
JB
46<section class="tsd-panel-group tsd-index-group">
47<section class="tsd-panel tsd-index-panel">
48<details class="tsd-index-content tsd-index-accordion" open><summary class="tsd-accordion-summary tsd-index-summary">
49<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>
50<div class="tsd-accordion-details">
51<section class="tsd-index-section">
52<h3 class="tsd-index-heading">Constructors</h3>
3bd6a82e 53<div class="tsd-index-list"><a href="DynamicThreadPool.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>
a76fac14
JB
54</div></section>
55<section class="tsd-index-section">
56<h3 class="tsd-index-heading">Properties</h3>
3bd6a82e 57<div class="tsd-index-list"><a href="DynamicThreadPool.html#emitter" class="tsd-index-link tsd-is-inherited"><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>
58<a href="DynamicThreadPool.html#filePath" class="tsd-index-link tsd-is-inherited"><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>
59<a href="DynamicThreadPool.html#max" 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>max</span></a>
60<a href="DynamicThreadPool.html#numberOfWorkers" class="tsd-index-link tsd-is-inherited"><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>
61<a href="DynamicThreadPool.html#opts" class="tsd-index-link tsd-is-inherited"><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>
62<a href="DynamicThreadPool.html#promiseResponseMap" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>
63<a href="DynamicThreadPool.html#workerChoiceStrategyContext" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>
64<a href="DynamicThreadPool.html#workerNodes" class="tsd-index-link tsd-is-inherited"><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>
a76fac14
JB
65</div></section>
66<section class="tsd-index-section">
67<h3 class="tsd-index-heading">Accessors</h3>
3bd6a82e 68<div class="tsd-index-list"><a href="DynamicThreadPool.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>
69<a href="DynamicThreadPool.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>
70<a href="DynamicThreadPool.html#numberOfQueuedTasks" class="tsd-index-link tsd-is-private tsd-is-inherited"><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>
71<a href="DynamicThreadPool.html#numberOfRunningTasks" class="tsd-index-link tsd-is-private tsd-is-inherited"><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>
72<a href="DynamicThreadPool.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>
a76fac14
JB
73</div></section>
74<section class="tsd-index-section">
75<h3 class="tsd-index-heading">Methods</h3>
3bd6a82e 76<div class="tsd-index-list"><a href="DynamicThreadPool.html#afterTaskExecutionHook" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>
77<a href="DynamicThreadPool.html#afterWorkerSetup" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>
78<a href="DynamicThreadPool.html#beforeTaskExecutionHook" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>
79<a href="DynamicThreadPool.html#chooseWorkerNode" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>
80<a href="DynamicThreadPool.html#createAndSetupWorker" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>
81<a href="DynamicThreadPool.html#createWorker" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>
82<a href="DynamicThreadPool.html#destroy" class="tsd-index-link tsd-is-inherited"><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>
83<a href="DynamicThreadPool.html#destroyWorker" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>
84<a href="DynamicThreadPool.html#enableTasksQueue" class="tsd-index-link tsd-is-inherited"><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>
85<a href="DynamicThreadPool.html#execute" class="tsd-index-link tsd-is-inherited"><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>
86<a href="DynamicThreadPool.html#findFreeWorkerNodeKey" class="tsd-index-link tsd-is-inherited"><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>find<wbr/>Free<wbr/>Worker<wbr/>Node<wbr/>Key</span></a>
87<a href="DynamicThreadPool.html#internalBusy" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>
88<a href="DynamicThreadPool.html#isMain" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>
89<a href="DynamicThreadPool.html#registerWorkerMessageListener" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>
90<a href="DynamicThreadPool.html#sendToWorker" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>
91<a href="DynamicThreadPool.html#setTasksQueueOptions" class="tsd-index-link tsd-is-inherited"><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>
92<a href="DynamicThreadPool.html#setWorkerChoiceStrategy" class="tsd-index-link tsd-is-inherited"><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>
93<a href="DynamicThreadPool.html#setWorkerChoiceStrategyOptions" class="tsd-index-link tsd-is-inherited"><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>
94<a href="DynamicThreadPool.html#setupHook" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>
95<a href="DynamicThreadPool.html#workerListener" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>
a76fac14
JB
96</div></section></div></details></section></section>
97<section class="tsd-panel-group tsd-member-group">
98<h2>Constructors</h2>
3bd6a82e 99<section class="tsd-panel tsd-member"><a id="constructor" class="tsd-anchor"></a>
a76fac14 100<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 101<ul class="tsd-signatures">
102<li class="tsd-signature tsd-anchor-link" id="constructor.new_DynamicThreadPool"><span class="tsd-kind-Constructor-signature">new <wbr/>Dynamic<wbr/>Thread<wbr/>Pool</span><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 tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">min</span>, <span class="tsd-kind-parameter">max</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><span class="tsd-signature-symbol">: </span><a href="DynamicThreadPool.html" class="tsd-signature-type tsd-kind-Class">DynamicThreadPool</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 tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span><a href="#constructor.new_DynamicThreadPool" 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>
a76fac14
JB
103<li class="tsd-description">
104<div class="tsd-comment tsd-typography"><p>Constructs a new poolifier dynamic thread pool.</p>
105</div>
106<section class="tsd-panel tsd-type-parameters">
107<h4>Type Parameters</h4>
108<ul class="tsd-type-parameters">
109<li>
3bd6a82e 110<h4><span class="tsd-kind-type-parameter">Data</span> = <span class="tsd-signature-type">unknown</span></h4></li>
a76fac14 111<li>
3bd6a82e 112<h4><span class="tsd-kind-type-parameter">Response</span> = <span class="tsd-signature-type">unknown</span></h4></li></ul></section>
a76fac14
JB
113<div class="tsd-parameters">
114<h4 class="tsd-parameters-title">Parameters</h4>
115<ul class="tsd-parameter-list">
116<li>
3bd6a82e 117<h5><span class="tsd-kind-parameter">min</span>: <span class="tsd-signature-type">number</span></h5>
a76fac14
JB
118<div class="tsd-comment tsd-typography"><p>Minimum number of threads which are always active.</p>
119</div></li>
120<li>
3bd6a82e 121<h5><span class="tsd-kind-parameter">max</span>: <span class="tsd-signature-type">number</span></h5>
a76fac14
JB
122<div class="tsd-comment tsd-typography"><p>Maximum number of threads that can be created by this pool.</p>
123</div></li>
124<li>
3bd6a82e 125<h5><span class="tsd-kind-parameter">filePath</span>: <span class="tsd-signature-type">string</span></h5>
a76fac14
JB
126<div class="tsd-comment tsd-typography"><p>Path to an implementation of a <code>ThreadWorker</code> file, which can be relative or absolute.</p>
127</div></li>
128<li>
3bd6a82e 129<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><a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> = {}</span></h5>
a76fac14
JB
130<div class="tsd-comment tsd-typography"><p>Options for this dynamic thread pool.</p>
131</div></li></ul></div>
3bd6a82e 132<h4 class="tsd-returns-title">Returns <a href="DynamicThreadPool.html" class="tsd-signature-type tsd-kind-Class">DynamicThreadPool</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 tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources">
a76fac14
JB
133<p>Overrides <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#constructor">constructor</a></p>
134<ul>
3bd6a82e 135<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/thread/dynamic.ts#L29">src/pools/thread/dynamic.ts:29</a></li></ul></aside></li></ul></section></section>
a76fac14
JB
136<section class="tsd-panel-group tsd-member-group">
137<h2>Properties</h2>
3bd6a82e 138<section class="tsd-panel tsd-member tsd-is-inherited"><a id="emitter" class="tsd-anchor"></a>
a76fac14 139<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>
3bd6a82e 140<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 141<div class="tsd-comment tsd-typography"><p>Emitter on which events can be listened to.</p>
142<p>Events that can currently be listened to:</p>
143<ul>
144<li><code>&#39;full&#39;</code>: Emitted when the pool is dynamic and full.</li>
145<li><code>&#39;busy&#39;</code>: Emitted when the pool is busy.</li>
146</ul>
147</div><aside class="tsd-sources">
a76fac14
JB
148<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#emitter">emitter</a></p>
149<ul>
3bd6a82e 150<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L42">src/pools/abstract-pool.ts:42</a></li></ul></aside></section>
151<section class="tsd-panel tsd-member tsd-is-inherited"><a id="filePath" class="tsd-anchor"></a>
a76fac14 152<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>
3bd6a82e 153<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 154<div class="tsd-comment tsd-typography"><p>Path to the worker file.</p>
cfc6e8df 155</div><aside class="tsd-sources">
a76fac14
JB
156<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#filePath">filePath</a></p>
157<ul>
3bd6a82e 158<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L77">src/pools/abstract-pool.ts:77</a></li></ul></aside></section>
159<section class="tsd-panel tsd-member"><a id="max" class="tsd-anchor"></a>
7cd8af00 160<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagReadonly">Readonly</code> <span>max</span><a href="#max" 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 161<div class="tsd-signature"><span class="tsd-kind-Property">max</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
cfc6e8df 162<div class="tsd-comment tsd-typography"><p>Maximum number of threads that can be created by this pool.</p>
163</div><aside class="tsd-sources">
a76fac14 164<ul>
3bd6a82e 165<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/thread/dynamic.ts#L31">src/pools/thread/dynamic.ts:31</a></li></ul></aside></section>
166<section class="tsd-panel tsd-member tsd-is-inherited"><a id="numberOfWorkers" class="tsd-anchor"></a>
a76fac14 167<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>
3bd6a82e 168<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>
cfc6e8df 169<div class="tsd-comment tsd-typography"><p>Number of workers that this pool should manage.</p>
170</div><aside class="tsd-sources">
a76fac14
JB
171<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#numberOfWorkers">numberOfWorkers</a></p>
172<ul>
3bd6a82e 173<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L76">src/pools/abstract-pool.ts:76</a></li></ul></aside></section>
174<section class="tsd-panel tsd-member tsd-is-inherited"><a id="opts" class="tsd-anchor"></a>
a76fac14 175<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>
3bd6a82e 176<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><a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a><span class="tsd-signature-symbol">&gt;</span></div>
cfc6e8df 177<div class="tsd-comment tsd-typography"><p>Options for the pool.</p>
178</div><aside class="tsd-sources">
a76fac14
JB
179<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#opts">opts</a></p>
180<ul>
3bd6a82e 181<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L78">src/pools/abstract-pool.ts:78</a></li></ul></aside></section>
182<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="promiseResponseMap" class="tsd-anchor"></a>
79458fb6 183<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>
3bd6a82e 184<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><a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a><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>
21402562 185<div class="tsd-comment tsd-typography"><p>The execution response promise map.</p>
a76fac14 186<ul>
79458fb6 187<li><code>key</code>: The message id of each submitted task.</li>
21402562 188<li><code>value</code>: An object that contains the worker, the execution response promise resolve and reject callbacks.</li>
24c3fcb4 189</ul>
21402562 190<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>
a76fac14 191</div><aside class="tsd-sources">
79458fb6 192<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#promiseResponseMap">promiseResponseMap</a></p>
a76fac14 193<ul>
3bd6a82e 194<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L52">src/pools/abstract-pool.ts:52</a></li></ul></aside></section>
195<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="workerChoiceStrategyContext" class="tsd-anchor"></a>
a76fac14 196<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>
3bd6a82e 197<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><a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a><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>
e604957d 198<div class="tsd-comment tsd-typography"><p>Worker choice strategy context referencing a worker choice algorithm implementation.</p>
199<p>Default to a round robin algorithm.</p>
a76fac14
JB
200</div><aside class="tsd-sources">
201<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#workerChoiceStrategyContext">workerChoiceStrategyContext</a></p>
202<ul>
3bd6a82e 203<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L62">src/pools/abstract-pool.ts:62</a></li></ul></aside></section>
204<section class="tsd-panel tsd-member tsd-is-inherited"><a id="workerNodes" class="tsd-anchor"></a>
ffc8d144 205<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>
3bd6a82e 206<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><a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a><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 207<div class="tsd-comment tsd-typography"><p>Pool worker nodes.</p>
208</div><aside class="tsd-sources">
ffc8d144 209<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#workerNodes">workerNodes</a></p>
a76fac14 210<ul>
3bd6a82e 211<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L39">src/pools/abstract-pool.ts:39</a></li></ul></aside></section></section>
a76fac14
JB
212<section class="tsd-panel-group tsd-member-group">
213<h2>Accessors</h2>
3bd6a82e 214<section class="tsd-panel tsd-member tsd-is-protected"><a id="busy" class="tsd-anchor"></a>
d6b93f1a 215<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</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 216<ul class="tsd-signatures tsd-is-protected">
a76fac14
JB
217<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>
218<li class="tsd-description">
6c525543 219<div class="tsd-comment tsd-typography"><p>Whether the pool is busy or not.</p>
220<p>The pool busyness boolean status.</p>
221</div>
a76fac14
JB
222<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
223<p>Overrides FixedThreadPool.busy</p>
224<ul>
3bd6a82e 225<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/thread/dynamic.ts#L49">src/pools/thread/dynamic.ts:49</a></li></ul></aside></li></ul></section>
226<section class="tsd-panel tsd-member tsd-is-protected"><a id="full" class="tsd-anchor"></a>
d6b93f1a 227<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</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 228<ul class="tsd-signatures tsd-is-protected">
0770fe62 229<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>
a76fac14 230<li class="tsd-description">
6c525543 231<div class="tsd-comment tsd-typography"><p>Whether the pool is full or not.</p>
232<p>The pool filling boolean status.</p>
233</div>
0770fe62 234<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
235<p>Overrides FixedThreadPool.full</p>
236<ul>
3bd6a82e 237<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/thread/dynamic.ts#L44">src/pools/thread/dynamic.ts:44</a></li></ul></aside></li></ul></section>
238<section class="tsd-panel tsd-member tsd-is-private tsd-is-inherited"><a id="numberOfQueuedTasks" class="tsd-anchor"></a>
ffc8d144 239<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 240<ul class="tsd-signatures tsd-is-private tsd-is-inherited">
ffc8d144 241<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>
242<li class="tsd-description">
243<div class="tsd-comment tsd-typography"><p>Number of tasks queued in the pool.</p>
244</div>
245<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
246<p>Inherited from FixedThreadPool.numberOfQueuedTasks</p>
247<ul>
3bd6a82e 248<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L195">src/pools/abstract-pool.ts:195</a></li></ul></aside></li></ul></section>
249<section class="tsd-panel tsd-member tsd-is-private tsd-is-inherited"><a id="numberOfRunningTasks" class="tsd-anchor"></a>
0770fe62 250<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 251<ul class="tsd-signatures tsd-is-private tsd-is-inherited">
0770fe62 252<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>
253<li class="tsd-description">
ffc8d144 254<div class="tsd-comment tsd-typography"><p>Number of tasks running in the pool.</p>
0770fe62 255</div>
a76fac14
JB
256<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
257<p>Inherited from FixedThreadPool.numberOfRunningTasks</p>
258<ul>
3bd6a82e 259<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L185">src/pools/abstract-pool.ts:185</a></li></ul></aside></li></ul></section>
260<section class="tsd-panel tsd-member"><a id="type" class="tsd-anchor"></a>
a76fac14 261<h3 class="tsd-anchor-link"><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 262<ul class="tsd-signatures">
263<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>
a76fac14 264<li class="tsd-description">
6c525543 265<div class="tsd-comment tsd-typography"><p>Pool type.</p>
266<p>If it is <code>&#39;dynamic&#39;</code>, it provides the <code>max</code> property.</p>
267</div>
3bd6a82e 268<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">
a76fac14
JB
269<p>Overrides FixedThreadPool.type</p>
270<ul>
3bd6a82e 271<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/thread/dynamic.ts#L39">src/pools/thread/dynamic.ts:39</a></li></ul></aside></li></ul></section></section>
a76fac14
JB
272<section class="tsd-panel-group tsd-member-group">
273<h2>Methods</h2>
3bd6a82e 274<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="afterTaskExecutionHook" class="tsd-anchor"></a>
18ba88e2 275<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 276<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
277<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>
ed1ecf09 278<li class="tsd-description">
18ba88e2 279<div class="tsd-comment tsd-typography"><p>Hook executed after the worker task execution.
ed1ecf09
JB
280Can be overridden.</p>
281</div>
282<div class="tsd-parameters">
283<h4 class="tsd-parameters-title">Parameters</h4>
284<ul class="tsd-parameter-list">
285<li>
3bd6a82e 286<h5><span class="tsd-kind-parameter">worker</span>: <a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a></h5>
79458fb6 287<div class="tsd-comment tsd-typography"><p>The worker.</p>
ed1ecf09
JB
288</div></li>
289<li>
3bd6a82e 290<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">unknown</span><span class="tsd-signature-symbol">&gt;</span></h5>
79458fb6 291<div class="tsd-comment tsd-typography"><p>The received message.</p>
ed1ecf09
JB
292</div></li></ul></div>
293<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
18ba88e2 294<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#afterTaskExecutionHook">afterTaskExecutionHook</a></p>
ed1ecf09 295<ul>
3bd6a82e 296<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L389">src/pools/abstract-pool.ts:389</a></li></ul></aside></li></ul></section>
297<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="afterWorkerSetup" class="tsd-anchor"></a>
a76fac14 298<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</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 299<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
300<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>
a76fac14 301<li class="tsd-description">
6c525543 302<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>
303<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>
304</div>
a76fac14
JB
305<div class="tsd-parameters">
306<h4 class="tsd-parameters-title">Parameters</h4>
307<ul class="tsd-parameter-list">
308<li>
3bd6a82e 309<h5><span class="tsd-kind-parameter">worker</span>: <a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a></h5>
6c525543 310<div class="tsd-comment tsd-typography"><p>The newly created worker.</p>
311</div></li></ul></div>
a76fac14
JB
312<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
313<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#afterWorkerSetup">afterWorkerSetup</a></p>
314<ul>
3bd6a82e 315<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/thread/fixed.ts#L85">src/pools/thread/fixed.ts:85</a></li></ul></aside></li></ul></section>
316<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="beforeTaskExecutionHook" class="tsd-anchor"></a>
18ba88e2 317<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 318<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
319<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>
ed1ecf09 320<li class="tsd-description">
18ba88e2 321<div class="tsd-comment tsd-typography"><p>Hook executed before the worker task execution.
ed1ecf09
JB
322Can be overridden.</p>
323</div>
324<div class="tsd-parameters">
325<h4 class="tsd-parameters-title">Parameters</h4>
326<ul class="tsd-parameter-list">
327<li>
3bd6a82e 328<h5><span class="tsd-kind-parameter">workerNodeKey</span>: <span class="tsd-signature-type">number</span></h5>
ffc8d144 329<div class="tsd-comment tsd-typography"><p>The worker node key.</p>
ed1ecf09
JB
330</div></li></ul></div>
331<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
18ba88e2 332<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#beforeTaskExecutionHook">beforeTaskExecutionHook</a></p>
ed1ecf09 333<ul>
3bd6a82e 334<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L378">src/pools/abstract-pool.ts:378</a></li></ul></aside></li></ul></section>
335<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="chooseWorkerNode" class="tsd-anchor"></a>
ffc8d144 336<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 337<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
338<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-symbol">[</span><span class="tsd-signature-type">number</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><a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a><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><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>
a76fac14 339<li class="tsd-description">
ffc8d144 340<div class="tsd-comment tsd-typography"><p>Chooses a worker node for the next task.</p>
e604957d 341<p>The default uses a round robin algorithm to distribute the load.</p>
a76fac14 342
ffc8d144 343<h3>Returns</h3><p>[worker node key, worker node].</p>
a76fac14 344</div>
3bd6a82e 345<h4 class="tsd-returns-title">Returns <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</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><a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a><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></h4><aside class="tsd-sources">
ffc8d144 346<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#chooseWorkerNode">chooseWorkerNode</a></p>
a76fac14 347<ul>
3bd6a82e 348<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L422">src/pools/abstract-pool.ts:422</a></li></ul></aside></li></ul></section>
349<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="createAndSetupWorker" class="tsd-anchor"></a>
a76fac14 350<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 351<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
352<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><a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a><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>
a76fac14 353<li class="tsd-description">
ffc8d144 354<div class="tsd-comment tsd-typography"><p>Creates a new worker and sets it up completely in the pool worker nodes.</p>
a76fac14
JB
355
356<h3>Returns</h3><p>New, completely set up worker.</p>
357</div>
3bd6a82e 358<h4 class="tsd-returns-title">Returns <a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a></h4><aside class="tsd-sources">
a76fac14
JB
359<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#createAndSetupWorker">createAndSetupWorker</a></p>
360<ul>
3bd6a82e 361<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L484">src/pools/abstract-pool.ts:484</a></li></ul></aside></li></ul></section>
362<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="createWorker" class="tsd-anchor"></a>
a76fac14 363<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</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 364<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
365<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><a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a><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>
a76fac14 366<li class="tsd-description">
6c525543 367<div class="tsd-comment tsd-typography"><p>Returns a newly created worker.</p>
368</div>
3bd6a82e 369<h4 class="tsd-returns-title">Returns <a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a></h4><aside class="tsd-sources">
a76fac14
JB
370<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#createWorker">createWorker</a></p>
371<ul>
3bd6a82e 372<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/thread/fixed.ts#L78">src/pools/thread/fixed.ts:78</a></li></ul></aside></li></ul></section>
373<section class="tsd-panel tsd-member tsd-is-inherited"><a id="destroy" class="tsd-anchor"></a>
a76fac14 374<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 375<ul class="tsd-signatures tsd-is-inherited">
376<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>
a76fac14 377<li class="tsd-description">
6c525543 378<div class="tsd-comment tsd-typography"><p>Shutdowns every current worker in this pool.</p>
379</div>
3bd6a82e 380<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">
a76fac14
JB
381<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#destroy">destroy</a></p>
382<ul>
3bd6a82e 383<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L341">src/pools/abstract-pool.ts:341</a></li></ul></aside></li></ul></section>
384<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="destroyWorker" class="tsd-anchor"></a>
d6b93f1a 385<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</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 386<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
387<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 ">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>
a76fac14 388<li class="tsd-description">
6c525543 389<div class="tsd-comment tsd-typography"><p>Shutdowns the given worker.</p>
390</div>
a76fac14
JB
391<div class="tsd-parameters">
392<h4 class="tsd-parameters-title">Parameters</h4>
393<ul class="tsd-parameter-list">
394<li>
3bd6a82e 395<h5><span class="tsd-kind-parameter">worker</span>: <a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a></h5>
6c525543 396<div class="tsd-comment tsd-typography"><p>A worker within <code>workerNodes</code>.</p>
397</div></li></ul></div>
3bd6a82e 398<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">
a76fac14
JB
399<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#destroyWorker">destroyWorker</a></p>
400<ul>
3bd6a82e 401<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/thread/fixed.ts#L54">src/pools/thread/fixed.ts:54</a></li></ul></aside></li></ul></section>
402<section class="tsd-panel tsd-member tsd-is-inherited"><a id="enableTasksQueue" class="tsd-anchor"></a>
6047493a 403<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 404<ul class="tsd-signatures tsd-is-inherited">
405<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 406<li class="tsd-description">
407<div class="tsd-comment tsd-typography"><p>Enables/disables the worker tasks queue in this pool.</p>
408</div>
409<div class="tsd-parameters">
410<h4 class="tsd-parameters-title">Parameters</h4>
411<ul class="tsd-parameter-list">
412<li>
3bd6a82e 413<h5><span class="tsd-kind-parameter">enable</span>: <span class="tsd-signature-type">boolean</span></h5>
6047493a 414<div class="tsd-comment tsd-typography"><p>Whether to enable or disable the worker tasks queue.</p>
415</div></li>
416<li>
3bd6a82e 417<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 418<div class="tsd-comment tsd-typography"><p>The worker tasks queue options.</p>
419</div></li></ul></div>
6047493a 420<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
421<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#enableTasksQueue">enableTasksQueue</a></p>
422<ul>
3bd6a82e 423<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L254">src/pools/abstract-pool.ts:254</a></li></ul></aside></li></ul></section>
424<section class="tsd-panel tsd-member tsd-is-inherited"><a id="execute" class="tsd-anchor"></a>
a76fac14 425<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 426<ul class="tsd-signatures tsd-is-inherited">
427<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-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>
a76fac14 428<li class="tsd-description">
761b0c73 429<div class="tsd-comment tsd-typography"><p>Executes the function specified in the worker constructor with the task data input parameter.</p>
6c525543 430
761b0c73 431<h3>Returns</h3><p>Promise that will be fulfilled when the task is completed.</p>
6c525543 432</div>
a76fac14
JB
433<div class="tsd-parameters">
434<h4 class="tsd-parameters-title">Parameters</h4>
435<ul class="tsd-parameter-list">
436<li>
3bd6a82e 437<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 438<div class="tsd-comment tsd-typography"><p>The task input data for the specified worker function. This can only be serializable data.</p>
6c525543 439</div></li></ul></div>
3bd6a82e 440<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><aside class="tsd-sources">
a76fac14
JB
441<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#execute">execute</a></p>
442<ul>
3bd6a82e 443<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L310">src/pools/abstract-pool.ts:310</a></li></ul></aside></li></ul></section>
444<section class="tsd-panel tsd-member tsd-is-inherited"><a id="findFreeWorkerNodeKey" class="tsd-anchor"></a>
ffc8d144 445<h3 class="tsd-anchor-link"><span>find<wbr/>Free<wbr/>Worker<wbr/>Node<wbr/>Key</span><a href="#findFreeWorkerNodeKey" 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 446<ul class="tsd-signatures tsd-is-inherited">
447<li class="tsd-signature tsd-anchor-link" id="findFreeWorkerNodeKey.findFreeWorkerNodeKey-1"><span class="tsd-kind-Call-signature">find<wbr/>Free<wbr/>Worker<wbr/>Node<wbr/>Key</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="#findFreeWorkerNodeKey.findFreeWorkerNodeKey-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>
a76fac14 448<li class="tsd-description">
6c525543 449<div class="tsd-comment tsd-typography"><p>Finds a free worker node key based on the number of tasks the worker has applied.</p>
450<p>If a worker is found with <code>0</code> running tasks, it is detected as free and its worker node key is returned.</p>
451<p>If no free worker is found, <code>-1</code> is returned.</p>
452
453<h3>Returns</h3><p>A worker node key if there is one, <code>-1</code> otherwise.</p>
454</div>
b4d61a75 455<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
ffc8d144 456<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#findFreeWorkerNodeKey">findFreeWorkerNodeKey</a></p>
a76fac14 457<ul>
3bd6a82e 458<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L303">src/pools/abstract-pool.ts:303</a></li></ul></aside></li></ul></section>
459<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="internalBusy" class="tsd-anchor"></a>
0770fe62 460<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 461<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
462<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>
a76fac14
JB
463<li class="tsd-description">
464<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
0770fe62 465<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#internalBusy">internalBusy</a></p>
a76fac14 466<ul>
3bd6a82e 467<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L298">src/pools/abstract-pool.ts:298</a></li></ul></aside></li></ul></section>
468<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="isMain" class="tsd-anchor"></a>
a76fac14 469<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</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 470<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
471<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>
a76fac14 472<li class="tsd-description">
6c525543 473<div class="tsd-comment tsd-typography"><p>Should return whether the worker is the main worker or not.</p>
474</div>
a76fac14
JB
475<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
476<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#isMain">isMain</a></p>
477<ul>
3bd6a82e 478<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/thread/fixed.ts#L49">src/pools/thread/fixed.ts:49</a></li></ul></aside></li></ul></section>
479<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="registerWorkerMessageListener" class="tsd-anchor"></a>
d6b93f1a 480<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</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 481<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
482<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>
a76fac14 483<li class="tsd-description">
6c525543 484<div class="tsd-comment tsd-typography"><p>Registers a listener callback on the given worker.</p>
485</div>
a76fac14
JB
486<section class="tsd-panel tsd-type-parameters">
487<h4>Type Parameters</h4>
488<ul class="tsd-type-parameters">
489<li>
3bd6a82e 490<h4><span class="tsd-kind-type-parameter">Message</span></h4></li></ul></section>
a76fac14
JB
491<div class="tsd-parameters">
492<h4 class="tsd-parameters-title">Parameters</h4>
493<ul class="tsd-parameter-list">
494<li>
3bd6a82e 495<h5><span class="tsd-kind-parameter">worker</span>: <a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a></h5>
6c525543 496<div class="tsd-comment tsd-typography"><p>The worker which should register a listener.</p>
497</div></li>
a76fac14 498<li>
3bd6a82e 499<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 500<div class="tsd-comment tsd-typography"><p>The message listener callback.</p>
501</div>
a76fac14
JB
502<ul class="tsd-parameters">
503<li class="tsd-parameter-signature">
3bd6a82e 504<ul class="tsd-signatures">
505<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>
a76fac14
JB
506<li class="tsd-description">
507<div class="tsd-parameters">
508<h4 class="tsd-parameters-title">Parameters</h4>
509<ul class="tsd-parameter-list">
510<li>
3bd6a82e 511<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">unknown</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
a76fac14
JB
512<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></li></ul></div>
513<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
514<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#registerWorkerMessageListener">registerWorkerMessageListener</a></p>
515<ul>
3bd6a82e 516<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/thread/fixed.ts#L70">src/pools/thread/fixed.ts:70</a></li></ul></aside></li></ul></section>
517<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="sendToWorker" class="tsd-anchor"></a>
a76fac14 518<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</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 519<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
520<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>
a76fac14 521<li class="tsd-description">
6c525543 522<div class="tsd-comment tsd-typography"><p>Sends a message to the given worker.</p>
523</div>
a76fac14
JB
524<div class="tsd-parameters">
525<h4 class="tsd-parameters-title">Parameters</h4>
526<ul class="tsd-parameter-list">
527<li>
3bd6a82e 528<h5><span class="tsd-kind-parameter">worker</span>: <a href="../types/ThreadWorkerWithMessageChannel.html" class="tsd-signature-type tsd-kind-Type-alias">ThreadWorkerWithMessageChannel</a></h5>
6c525543 529<div class="tsd-comment tsd-typography"><p>The worker which should receive the message.</p>
530</div></li>
a76fac14 531<li>
3bd6a82e 532<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">unknown</span><span class="tsd-signature-symbol">&gt;</span></h5>
6c525543 533<div class="tsd-comment tsd-typography"><p>The message.</p>
534</div></li></ul></div>
a76fac14
JB
535<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
536<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#sendToWorker">sendToWorker</a></p>
537<ul>
3bd6a82e 538<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/thread/fixed.ts#L62">src/pools/thread/fixed.ts:62</a></li></ul></aside></li></ul></section>
539<section class="tsd-panel tsd-member tsd-is-inherited"><a id="setTasksQueueOptions" class="tsd-anchor"></a>
6047493a 540<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 541<ul class="tsd-signatures tsd-is-inherited">
542<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 543<li class="tsd-description">
544<div class="tsd-comment tsd-typography"><p>Sets the worker tasks queue options in this pool.</p>
545</div>
546<div class="tsd-parameters">
547<h4 class="tsd-parameters-title">Parameters</h4>
548<ul class="tsd-parameter-list">
549<li>
3bd6a82e 550<h5><span class="tsd-kind-parameter">tasksQueueOptions</span>: <a href="../interfaces/TasksQueueOptions.html" class="tsd-signature-type tsd-kind-Interface">TasksQueueOptions</a></h5>
6047493a 551<div class="tsd-comment tsd-typography"><p>The worker tasks queue options.</p>
552</div></li></ul></div>
553<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
554<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#setTasksQueueOptions">setTasksQueueOptions</a></p>
555<ul>
3bd6a82e 556<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L266">src/pools/abstract-pool.ts:266</a></li></ul></aside></li></ul></section>
557<section class="tsd-panel tsd-member tsd-is-inherited"><a id="setWorkerChoiceStrategy" class="tsd-anchor"></a>
a76fac14 558<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 559<ul class="tsd-signatures tsd-is-inherited">
560<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>
a76fac14 561<li class="tsd-description">
6c525543 562<div class="tsd-comment tsd-typography"><p>Sets the worker choice strategy in this pool.</p>
563</div>
a76fac14
JB
564<div class="tsd-parameters">
565<h4 class="tsd-parameters-title">Parameters</h4>
566<ul class="tsd-parameter-list">
567<li>
3bd6a82e 568<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;LESS_USED&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;LESS_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></h5>
6c525543 569<div class="tsd-comment tsd-typography"><p>The worker choice strategy.</p>
a8aeac44 570</div></li>
571<li>
3bd6a82e 572<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 573<div class="tsd-comment tsd-typography"><p>The worker choice strategy options.</p>
6c525543 574</div></li></ul></div>
a76fac14
JB
575<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
576<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#setWorkerChoiceStrategy">setWorkerChoiceStrategy</a></p>
577<ul>
3bd6a82e 578<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L218">src/pools/abstract-pool.ts:218</a></li></ul></aside></li></ul></section>
579<section class="tsd-panel tsd-member tsd-is-inherited"><a id="setWorkerChoiceStrategyOptions" class="tsd-anchor"></a>
6047493a 580<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 581<ul class="tsd-signatures tsd-is-inherited">
582<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 583<li class="tsd-description">
584<div class="tsd-comment tsd-typography"><p>Sets the worker choice strategy options in this pool.</p>
585</div>
586<div class="tsd-parameters">
587<h4 class="tsd-parameters-title">Parameters</h4>
588<ul class="tsd-parameter-list">
589<li>
3bd6a82e 590<h5><span class="tsd-kind-parameter">workerChoiceStrategyOptions</span>: <a href="../interfaces/WorkerChoiceStrategyOptions.html" class="tsd-signature-type tsd-kind-Interface">WorkerChoiceStrategyOptions</a></h5>
6047493a 591<div class="tsd-comment tsd-typography"><p>The worker choice strategy options.</p>
592</div></li></ul></div>
593<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
594<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#setWorkerChoiceStrategyOptions">setWorkerChoiceStrategyOptions</a></p>
595<ul>
3bd6a82e 596<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L244">src/pools/abstract-pool.ts:244</a></li></ul></aside></li></ul></section>
597<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="setupHook" class="tsd-anchor"></a>
a76fac14 598<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 599<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
600<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>
a76fac14 601<li class="tsd-description">
18ba88e2 602<div class="tsd-comment tsd-typography"><p>Setup hook to execute code before worker node are created in the abstract constructor.
fa643634 603Can be overridden</p>
a76fac14
JB
604</div>
605<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
606<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#setupHook">setupHook</a></p>
607<ul>
3bd6a82e 608<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L363">src/pools/abstract-pool.ts:363</a></li></ul></aside></li></ul></section>
609<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="workerListener" class="tsd-anchor"></a>
a76fac14 610<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 611<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
612<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>
a76fac14 613<li class="tsd-description">
ffc8d144 614<div class="tsd-comment tsd-typography"><p>This function is the listener registered for each worker message.</p>
a76fac14
JB
615
616<h3>Returns</h3><p>The listener function to execute when a message is received from a worker.</p>
617</div>
3bd6a82e 618<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>
a76fac14
JB
619<ul class="tsd-parameters">
620<li class="tsd-parameter-signature">
3bd6a82e 621<ul class="tsd-signatures">
622<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>
a76fac14 623<li class="tsd-description">
ffc8d144 624<div class="tsd-comment tsd-typography"><p>This function is the listener registered for each worker message.</p>
a76fac14
JB
625
626<h3>Returns</h3><p>The listener function to execute when a message is received from a worker.</p>
627</div>
628<div class="tsd-parameters">
629<h4 class="tsd-parameters-title">Parameters</h4>
630<ul class="tsd-parameter-list">
631<li>
3bd6a82e 632<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">unknown</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
a76fac14
JB
633<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul><aside class="tsd-sources">
634<p>Inherited from <a href="FixedThreadPool.html">FixedThreadPool</a>.<a href="FixedThreadPool.html#workerListener">workerListener</a></p>
635<ul>
3bd6a82e 636<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/a230240/src/pools/abstract-pool.ts#L507">src/pools/abstract-pool.ts:507</a></li></ul></aside></li></ul></section></section></div>
ec06e4dd 637<div class="col-sidebar">
638<div class="page-menu">
a76fac14
JB
639<div class="tsd-navigation settings">
640<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">
ec06e4dd 641<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>
a76fac14
JB
642<div class="tsd-accordion-details">
643<div class="tsd-filter-visibility">
644<h4 class="uppercase">Member Visibility</h4><form>
645<ul id="tsd-filter-options">
646<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>
647<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>
648<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>
649<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>
650<div class="tsd-theme-toggle">
3bd6a82e 651<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>
ec06e4dd 652<details open class="tsd-index-accordion tsd-page-navigation"><summary class="tsd-accordion-summary">
653<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>
a76fac14
JB
654<div class="tsd-accordion-details">
655<ul>
3bd6a82e 656<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>
657<li><a href="#emitter" class="tsd-is-inherited"><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>
658<li><a href="#filePath" class="tsd-is-inherited"><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>
659<li><a href="#max" 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>max</span></a></li>
660<li><a href="#numberOfWorkers" class="tsd-is-inherited"><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>
661<li><a href="#opts" class="tsd-is-inherited"><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>
662<li><a href="#promiseResponseMap" class="tsd-is-protected tsd-is-inherited"><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>
663<li><a href="#workerChoiceStrategyContext" class="tsd-is-protected tsd-is-inherited"><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>
664<li><a href="#workerNodes" class="tsd-is-inherited"><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>
665<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>
666<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>
667<li><a href="#numberOfQueuedTasks" class="tsd-is-private tsd-is-inherited"><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>
668<li><a href="#numberOfRunningTasks" class="tsd-is-private tsd-is-inherited"><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>
669<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>
670<li><a href="#afterTaskExecutionHook" class="tsd-is-protected tsd-is-inherited"><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>
671<li><a href="#afterWorkerSetup" class="tsd-is-protected tsd-is-inherited"><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>
672<li><a href="#beforeTaskExecutionHook" class="tsd-is-protected tsd-is-inherited"><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>
673<li><a href="#chooseWorkerNode" class="tsd-is-protected tsd-is-inherited"><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>
674<li><a href="#createAndSetupWorker" class="tsd-is-protected tsd-is-inherited"><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>
675<li><a href="#createWorker" class="tsd-is-protected tsd-is-inherited"><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>
676<li><a href="#destroy" class="tsd-is-inherited"><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>
677<li><a href="#destroyWorker" class="tsd-is-protected tsd-is-inherited"><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>
678<li><a href="#enableTasksQueue" class="tsd-is-inherited"><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>
679<li><a href="#execute" class="tsd-is-inherited"><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>
680<li><a href="#findFreeWorkerNodeKey" class="tsd-is-inherited"><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>find<wbr/>Free<wbr/>Worker<wbr/>Node<wbr/>Key</span></a></li>
681<li><a href="#internalBusy" class="tsd-is-protected tsd-is-inherited"><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>
682<li><a href="#isMain" class="tsd-is-protected tsd-is-inherited"><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>
683<li><a href="#registerWorkerMessageListener" class="tsd-is-protected tsd-is-inherited"><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>
684<li><a href="#sendToWorker" class="tsd-is-protected tsd-is-inherited"><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>
685<li><a href="#setTasksQueueOptions" class="tsd-is-inherited"><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>
686<li><a href="#setWorkerChoiceStrategy" class="tsd-is-inherited"><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>
687<li><a href="#setWorkerChoiceStrategyOptions" class="tsd-is-inherited"><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>
688<li><a href="#setupHook" class="tsd-is-protected tsd-is-inherited"><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>
689<li><a href="#workerListener" class="tsd-is-protected tsd-is-inherited"><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>
ec06e4dd 690<div class="site-menu">
691<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>
692<ul class="tsd-small-nested-navigation">
3bd6a82e 693<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>
694<li><a href="AbstractPool.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-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>
695<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>
696<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>
697<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>
698<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>
699<li><a href="DynamicThreadPool.html" class="current"><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>
700<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>
701<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>
702<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>
703<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>
704<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>
705<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>
706<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>
707<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>
708<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>
709<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>
710<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>
711<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>
712<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>
713<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>
714<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>
715<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>
716<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>
717<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>
718<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>
719<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>
720<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>
721<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>
722<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>
723<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>
724<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>
725<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>
726<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>
727<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>
728<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>
729<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>
730<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>
731<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>
732<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>
733<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>
ec06e4dd 734<div class="tsd-generator">
a76fac14 735<p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div>
ec06e4dd 736<div class="overlay"></div></body></html>