build(deps-dev): apply updates
[poolifier.git] / docs / classes / FixedClusterPool.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>FixedClusterPool | 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="FixedClusterPool.html">FixedClusterPool</a></li></ul>
17<h1>Class FixedClusterPool&lt;Data, Response&gt;</h1></div>
18<section class="tsd-panel tsd-comment">
19<div class="tsd-comment tsd-typography"><p>A cluster pool with a fixed number of workers.</p>
20<p>It is possible to perform tasks in sync or asynchronous mode as you prefer.</p>
24c3fcb4 21<p>This pool selects the workers in a round robin fashion.</p>
a76fac14 22
a76fac14
JB
23<h3>Author</h3><p><a href="https://github.com/Shinigami92">Christopher Quadflieg</a></p>
24
25<h3>Since</h3><p>2.0.0</p>
26</div></section>
fab6d3b5 27<section class="tsd-panel">
a76fac14 28<h4>Type Parameters</h4>
fab6d3b5 29<ul class="tsd-type-parameter-list">
a76fac14 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">
8d1797ad 41<li><a href="AbstractPool.html" class="tsd-signature-type tsd-kind-class">AbstractPool</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type ">Worker</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span>
a76fac14
JB
42<ul class="tsd-hierarchy">
43<li><span class="target">FixedClusterPool</span>
44<ul class="tsd-hierarchy">
8d1797ad 45<li><a href="DynamicClusterPool.html" class="tsd-signature-type tsd-kind-class">DynamicClusterPool</a></li></ul></li></ul></li></ul></section><aside class="tsd-sources">
a76fac14 46<ul>
70353024 47<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/cluster/fixed.ts#L39">src/pools/cluster/fixed.ts:39</a></li></ul></aside>
a76fac14
JB
48<section class="tsd-panel-group tsd-index-group">
49<section class="tsd-panel tsd-index-panel">
50<details class="tsd-index-content tsd-index-accordion" open><summary class="tsd-accordion-summary tsd-index-summary">
51<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>
52<div class="tsd-accordion-details">
53<section class="tsd-index-section">
54<h3 class="tsd-index-heading">Constructors</h3>
3bd6a82e 55<div class="tsd-index-list"><a href="FixedClusterPool.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
56</div></section>
57<section class="tsd-index-section">
58<h3 class="tsd-index-heading">Properties</h3>
3bd6a82e 59<div class="tsd-index-list"><a href="FixedClusterPool.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>
60<a href="FixedClusterPool.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>
61<a href="FixedClusterPool.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>
62<a href="FixedClusterPool.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>
63<a href="FixedClusterPool.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>
64<a href="FixedClusterPool.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>
65<a href="FixedClusterPool.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
66</div></section>
67<section class="tsd-index-section">
68<h3 class="tsd-index-heading">Accessors</h3>
3bd6a82e 69<div class="tsd-index-list"><a href="FixedClusterPool.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>
70<a href="FixedClusterPool.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>
71<a href="FixedClusterPool.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>
72<a href="FixedClusterPool.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>
2c94c3a5 73<a href="FixedClusterPool.html#size" class="tsd-index-link"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-262144-path"></use><use href="#icon-262144-text"></use></svg><span>size</span></a>
3bd6a82e 74<a href="FixedClusterPool.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
75</div></section>
76<section class="tsd-index-section">
77<h3 class="tsd-index-heading">Methods</h3>
3bd6a82e 78<div class="tsd-index-list"><a href="FixedClusterPool.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>
79<a href="FixedClusterPool.html#afterWorkerSetup" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>after<wbr/>Worker<wbr/>Setup</span></a>
80<a href="FixedClusterPool.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>
81<a href="FixedClusterPool.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>
82<a href="FixedClusterPool.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>
83<a href="FixedClusterPool.html#createWorker" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>create<wbr/>Worker</span></a>
84<a href="FixedClusterPool.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>
85<a href="FixedClusterPool.html#destroyWorker" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>destroy<wbr/>Worker</span></a>
86<a href="FixedClusterPool.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>
87<a href="FixedClusterPool.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>
3bd6a82e 88<a href="FixedClusterPool.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>
89<a href="FixedClusterPool.html#isMain" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>is<wbr/>Main</span></a>
90<a href="FixedClusterPool.html#registerWorkerMessageListener" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>register<wbr/>Worker<wbr/>Message<wbr/>Listener</span></a>
91<a href="FixedClusterPool.html#sendToWorker" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>send<wbr/>To<wbr/>Worker</span></a>
92<a href="FixedClusterPool.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>
93<a href="FixedClusterPool.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>
94<a href="FixedClusterPool.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>
95<a href="FixedClusterPool.html#setupHook" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>setup<wbr/>Hook</span></a>
96<a href="FixedClusterPool.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
97</div></section></div></details></section></section>
98<section class="tsd-panel-group tsd-member-group">
99<h2>Constructors</h2>
3bd6a82e 100<section class="tsd-panel tsd-member"><a id="constructor" class="tsd-anchor"></a>
a76fac14 101<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 102<ul class="tsd-signatures">
8d1797ad 103<li class="tsd-signature tsd-anchor-link" id="constructor.new_FixedClusterPool"><span class="tsd-kind-constructor-signature">new <wbr/>Fixed<wbr/>Cluster<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">numberOfWorkers</span>, <span class="tsd-kind-parameter">filePath</span>, <span class="tsd-kind-parameter">opts</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="FixedClusterPool.html" class="tsd-signature-type tsd-kind-class">FixedClusterPool</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_FixedClusterPool" 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
104<li class="tsd-description">
105<div class="tsd-comment tsd-typography"><p>Constructs a new poolifier fixed cluster pool.</p>
106</div>
fab6d3b5 107<section class="tsd-panel">
a76fac14 108<h4>Type Parameters</h4>
fab6d3b5 109<ul class="tsd-type-parameter-list">
a76fac14 110<li>
3bd6a82e 111<h4><span class="tsd-kind-type-parameter">Data</span> = <span class="tsd-signature-type">unknown</span></h4></li>
a76fac14 112<li>
3bd6a82e 113<h4><span class="tsd-kind-type-parameter">Response</span> = <span class="tsd-signature-type">unknown</span></h4></li></ul></section>
a76fac14
JB
114<div class="tsd-parameters">
115<h4 class="tsd-parameters-title">Parameters</h4>
116<ul class="tsd-parameter-list">
117<li>
3bd6a82e 118<h5><span class="tsd-kind-parameter">numberOfWorkers</span>: <span class="tsd-signature-type">number</span></h5>
a76fac14
JB
119<div class="tsd-comment tsd-typography"><p>Number of workers for this pool.</p>
120</div></li>
121<li>
3bd6a82e 122<h5><span class="tsd-kind-parameter">filePath</span>: <span class="tsd-signature-type">string</span></h5>
a76fac14
JB
123<div class="tsd-comment tsd-typography"><p>Path to an implementation of a <code>ClusterWorker</code> file, which can be relative or absolute.</p>
124</div></li>
125<li>
8d1797ad 126<h5><span class="tsd-kind-parameter">opts</span>: <a href="../interfaces/ClusterPoolOptions.html" class="tsd-signature-type tsd-kind-interface">ClusterPoolOptions</a><span class="tsd-signature-symbol"> = {}</span></h5>
a76fac14
JB
127<div class="tsd-comment tsd-typography"><p>Options for this fixed cluster pool.</p>
128</div></li></ul></div>
8d1797ad 129<h4 class="tsd-returns-title">Returns <a href="FixedClusterPool.html" class="tsd-signature-type tsd-kind-class">FixedClusterPool</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">
6c525543 130<p>Overrides <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#constructor">constructor</a></p>
a76fac14 131<ul>
70353024 132<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/cluster/fixed.ts#L50">src/pools/cluster/fixed.ts:50</a></li></ul></aside></li></ul></section></section>
a76fac14
JB
133<section class="tsd-panel-group tsd-member-group">
134<h2>Properties</h2>
3bd6a82e 135<section class="tsd-panel tsd-member tsd-is-inherited"><a id="emitter" class="tsd-anchor"></a>
a76fac14 136<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagOptional">Optional</code> <code class="tsd-tag ts-flagReadonly">Readonly</code> <span>emitter</span><a href="#emitter" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
8d1797ad 137<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 138<div class="tsd-comment tsd-typography"><p>Emitter on which events can be listened to.</p>
139<p>Events that can currently be listened to:</p>
a76fac14 140<ul>
6c525543 141<li><code>&#39;full&#39;</code>: Emitted when the pool is dynamic and full.</li>
142<li><code>&#39;busy&#39;</code>: Emitted when the pool is busy.</li>
70353024 143<li><code>&#39;error&#39;</code>: Emitted when an error occurs.</li>
6c525543 144</ul>
145</div><aside class="tsd-sources">
146<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#emitter">emitter</a></p>
147<ul>
70353024 148<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L44">src/pools/abstract-pool.ts:44</a></li></ul></aside></section>
3bd6a82e 149<section class="tsd-panel tsd-member tsd-is-inherited"><a id="filePath" class="tsd-anchor"></a>
a76fac14 150<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagReadonly">Readonly</code> <span>file<wbr/>Path</span><a href="#filePath" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
8d1797ad 151<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 152<div class="tsd-comment tsd-typography"><p>Path to the worker file.</p>
cfc6e8df 153</div><aside class="tsd-sources">
6c525543 154<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#filePath">filePath</a></p>
a76fac14 155<ul>
70353024 156<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L79">src/pools/abstract-pool.ts:79</a></li></ul></aside></section>
3bd6a82e 157<section class="tsd-panel tsd-member tsd-is-inherited"><a id="numberOfWorkers" class="tsd-anchor"></a>
a76fac14 158<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagReadonly">Readonly</code> <span>number<wbr/>Of<wbr/>Workers</span><a href="#numberOfWorkers" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
8d1797ad 159<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 160<div class="tsd-comment tsd-typography"><p>Number of workers that this pool should manage.</p>
161</div><aside class="tsd-sources">
6c525543 162<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#numberOfWorkers">numberOfWorkers</a></p>
a76fac14 163<ul>
70353024 164<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L78">src/pools/abstract-pool.ts:78</a></li></ul></aside></section>
3bd6a82e 165<section class="tsd-panel tsd-member tsd-is-inherited"><a id="opts" class="tsd-anchor"></a>
a76fac14 166<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagReadonly">Readonly</code> <span>opts</span><a href="#opts" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
8d1797ad 167<div class="tsd-signature"><span class="tsd-kind-property">opts</span><span class="tsd-signature-symbol">:</span> <a href="../interfaces/ClusterPoolOptions.html" class="tsd-signature-type tsd-kind-interface">ClusterPoolOptions</a><span class="tsd-signature-symbol"> = {}</span></div>
cfc6e8df 168<div class="tsd-comment tsd-typography"><p>Options for this fixed cluster pool.</p>
169</div><aside class="tsd-sources">
6c525543 170<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#opts">opts</a></p>
a76fac14 171<ul>
70353024 172<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/cluster/fixed.ts#L53">src/pools/cluster/fixed.ts:53</a></li></ul></aside></section>
3bd6a82e 173<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="promiseResponseMap" class="tsd-anchor"></a>
79458fb6 174<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>promise<wbr/>Response<wbr/>Map</span><a href="#promiseResponseMap" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
8d1797ad 175<div class="tsd-signature"><span class="tsd-kind-property">promise<wbr/>Response<wbr/>Map</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type ">Map</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../interfaces/PromiseResponseWrapper.html" class="tsd-signature-type tsd-kind-interface">PromiseResponseWrapper</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type ">Worker</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> = ...</span></div>
21402562 176<div class="tsd-comment tsd-typography"><p>The execution response promise map.</p>
a76fac14 177<ul>
79458fb6 178<li><code>key</code>: The message id of each submitted task.</li>
21402562 179<li><code>value</code>: An object that contains the worker, the execution response promise resolve and reject callbacks.</li>
24c3fcb4 180</ul>
21402562 181<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 182</div><aside class="tsd-sources">
6c525543 183<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#promiseResponseMap">promiseResponseMap</a></p>
a76fac14 184<ul>
70353024 185<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L54">src/pools/abstract-pool.ts:54</a></li></ul></aside></section>
3bd6a82e 186<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="workerChoiceStrategyContext" class="tsd-anchor"></a>
a76fac14 187<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>worker<wbr/>Choice<wbr/>Strategy<wbr/>Context</span><a href="#workerChoiceStrategyContext" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
8d1797ad 188<div class="tsd-signature"><span class="tsd-kind-property">worker<wbr/>Choice<wbr/>Strategy<wbr/>Context</span><span class="tsd-signature-symbol">:</span> <a href="WorkerChoiceStrategyContext.html" class="tsd-signature-type tsd-kind-class">WorkerChoiceStrategyContext</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type ">Worker</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span></div>
e604957d 189<div class="tsd-comment tsd-typography"><p>Worker choice strategy context referencing a worker choice algorithm implementation.</p>
190<p>Default to a round robin algorithm.</p>
a76fac14 191</div><aside class="tsd-sources">
6c525543 192<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#workerChoiceStrategyContext">workerChoiceStrategyContext</a></p>
a76fac14 193<ul>
70353024 194<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L64">src/pools/abstract-pool.ts:64</a></li></ul></aside></section>
3bd6a82e 195<section class="tsd-panel tsd-member tsd-is-inherited"><a id="workerNodes" class="tsd-anchor"></a>
ffc8d144 196<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagReadonly">Readonly</code> <span>worker<wbr/>Nodes</span><a href="#workerNodes" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
8d1797ad 197<div class="tsd-signature"><span class="tsd-kind-property">worker<wbr/>Nodes</span><span class="tsd-signature-symbol">:</span> <a href="../interfaces/WorkerNode.html" class="tsd-signature-type tsd-kind-interface">WorkerNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type ">Worker</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> = []</span></div>
6c525543 198<div class="tsd-comment tsd-typography"><p>Pool worker nodes.</p>
199</div><aside class="tsd-sources">
200<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#workerNodes">workerNodes</a></p>
a76fac14 201<ul>
70353024 202<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L41">src/pools/abstract-pool.ts:41</a></li></ul></aside></section></section>
a76fac14
JB
203<section class="tsd-panel-group tsd-member-group">
204<h2>Accessors</h2>
3bd6a82e 205<section class="tsd-panel tsd-member tsd-is-protected"><a id="busy" class="tsd-anchor"></a>
d6b93f1a 206<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 207<ul class="tsd-signatures tsd-is-protected">
a76fac14
JB
208<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>
209<li class="tsd-description">
6c525543 210<div class="tsd-comment tsd-typography"><p>Whether the pool is busy or not.</p>
211<p>The pool busyness boolean status.</p>
212</div>
a76fac14
JB
213<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
214<p>Overrides AbstractPool.busy</p>
215<ul>
70353024 216<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/cluster/fixed.ts#L114">src/pools/cluster/fixed.ts:114</a></li></ul></aside></li></ul></section>
3bd6a82e 217<section class="tsd-panel tsd-member tsd-is-protected"><a id="full" class="tsd-anchor"></a>
d6b93f1a 218<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 219<ul class="tsd-signatures tsd-is-protected">
0770fe62 220<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 221<li class="tsd-description">
6c525543 222<div class="tsd-comment tsd-typography"><p>Whether the pool is full or not.</p>
223<p>The pool filling boolean status.</p>
224</div>
0770fe62 225<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
226<p>Overrides AbstractPool.full</p>
227<ul>
70353024 228<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/cluster/fixed.ts#L109">src/pools/cluster/fixed.ts:109</a></li></ul></aside></li></ul></section>
3bd6a82e 229<section class="tsd-panel tsd-member tsd-is-private tsd-is-inherited"><a id="numberOfQueuedTasks" class="tsd-anchor"></a>
ffc8d144 230<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 231<ul class="tsd-signatures tsd-is-private tsd-is-inherited">
ffc8d144 232<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>
233<li class="tsd-description">
234<div class="tsd-comment tsd-typography"><p>Number of tasks queued in the pool.</p>
235</div>
236<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
237<p>Inherited from AbstractPool.numberOfQueuedTasks</p>
238<ul>
70353024 239<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L230">src/pools/abstract-pool.ts:230</a></li></ul></aside></li></ul></section>
3bd6a82e 240<section class="tsd-panel tsd-member tsd-is-private tsd-is-inherited"><a id="numberOfRunningTasks" class="tsd-anchor"></a>
0770fe62 241<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 242<ul class="tsd-signatures tsd-is-private tsd-is-inherited">
0770fe62 243<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>
244<li class="tsd-description">
ffc8d144 245<div class="tsd-comment tsd-typography"><p>Number of tasks running in the pool.</p>
0770fe62 246</div>
a76fac14
JB
247<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
248<p>Inherited from AbstractPool.numberOfRunningTasks</p>
249<ul>
70353024 250<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L220">src/pools/abstract-pool.ts:220</a></li></ul></aside></li></ul></section>
2c94c3a5 251<section class="tsd-panel tsd-member"><a id="size" class="tsd-anchor"></a>
252<h3 class="tsd-anchor-link"><span>size</span><a href="#size" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
253<ul class="tsd-signatures">
254<li class="tsd-signature" id="size.size-1"><span class="tsd-signature-symbol">get</span> size<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li>
255<li class="tsd-description">
256<div class="tsd-comment tsd-typography"><p>Pool maximum size.</p>
257</div>
258<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
259<p>Overrides AbstractPool.size</p>
260<ul>
70353024 261<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/cluster/fixed.ts#L104">src/pools/cluster/fixed.ts:104</a></li></ul></aside></li></ul></section>
3bd6a82e 262<section class="tsd-panel tsd-member"><a id="type" class="tsd-anchor"></a>
a76fac14 263<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 264<ul class="tsd-signatures">
8d1797ad 265<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 266<li class="tsd-description">
6c525543 267<div class="tsd-comment tsd-typography"><p>Pool type.</p>
268<p>If it is <code>&#39;dynamic&#39;</code>, it provides the <code>max</code> property.</p>
269</div>
8d1797ad 270<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
271<p>Overrides AbstractPool.type</p>
272<ul>
70353024 273<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/cluster/fixed.ts#L99">src/pools/cluster/fixed.ts:99</a></li></ul></aside></li></ul></section></section>
a76fac14
JB
274<section class="tsd-panel-group tsd-member-group">
275<h2>Methods</h2>
3bd6a82e 276<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="afterTaskExecutionHook" class="tsd-anchor"></a>
18ba88e2 277<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 278<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
8d1797ad 279<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 280<li class="tsd-description">
18ba88e2 281<div class="tsd-comment tsd-typography"><p>Hook executed after the worker task execution.
ed1ecf09
JB
282Can be overridden.</p>
283</div>
284<div class="tsd-parameters">
285<h4 class="tsd-parameters-title">Parameters</h4>
286<ul class="tsd-parameter-list">
287<li>
3bd6a82e 288<h5><span class="tsd-kind-parameter">worker</span>: <span class="tsd-signature-type ">Worker</span></h5>
79458fb6 289<div class="tsd-comment tsd-typography"><p>The worker.</p>
ed1ecf09
JB
290</div></li>
291<li>
2c94c3a5 292<h5><span class="tsd-kind-parameter">message</span>: <a href="../interfaces/MessageValue.html" class="tsd-signature-type tsd-kind-interface">MessageValue</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type ">Worker</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type ">MessagePort</span><span class="tsd-signature-symbol">&gt;</span></h5>
79458fb6 293<div class="tsd-comment tsd-typography"><p>The received message.</p>
ed1ecf09
JB
294</div></li></ul></div>
295<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
6c525543 296<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#afterTaskExecutionHook">afterTaskExecutionHook</a></p>
ed1ecf09 297<ul>
70353024 298<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L430">src/pools/abstract-pool.ts:430</a></li></ul></aside></li></ul></section>
3bd6a82e 299<section class="tsd-panel tsd-member tsd-is-protected"><a id="afterWorkerSetup" class="tsd-anchor"></a>
a76fac14 300<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 301<ul class="tsd-signatures tsd-is-protected">
8d1797ad 302<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 303<li class="tsd-description">
6c525543 304<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>
305<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>
306</div>
a76fac14
JB
307<div class="tsd-parameters">
308<h4 class="tsd-parameters-title">Parameters</h4>
309<ul class="tsd-parameter-list">
310<li>
3bd6a82e 311<h5><span class="tsd-kind-parameter">worker</span>: <span class="tsd-signature-type ">Worker</span></h5>
6c525543 312<div class="tsd-comment tsd-typography"><p>The newly created worker.</p>
313</div></li></ul></div>
a76fac14 314<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
6c525543 315<p>Overrides <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#afterWorkerSetup">afterWorkerSetup</a></p>
a76fac14 316<ul>
70353024 317<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/cluster/fixed.ts#L93">src/pools/cluster/fixed.ts:93</a></li></ul></aside></li></ul></section>
3bd6a82e 318<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="beforeTaskExecutionHook" class="tsd-anchor"></a>
18ba88e2 319<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 320<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
8d1797ad 321<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 322<li class="tsd-description">
18ba88e2 323<div class="tsd-comment tsd-typography"><p>Hook executed before the worker task execution.
ed1ecf09
JB
324Can be overridden.</p>
325</div>
326<div class="tsd-parameters">
327<h4 class="tsd-parameters-title">Parameters</h4>
328<ul class="tsd-parameter-list">
329<li>
3bd6a82e 330<h5><span class="tsd-kind-parameter">workerNodeKey</span>: <span class="tsd-signature-type">number</span></h5>
ffc8d144 331<div class="tsd-comment tsd-typography"><p>The worker node key.</p>
ed1ecf09
JB
332</div></li></ul></div>
333<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
6c525543 334<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#beforeTaskExecutionHook">beforeTaskExecutionHook</a></p>
ed1ecf09 335<ul>
70353024 336<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L419">src/pools/abstract-pool.ts:419</a></li></ul></aside></li></ul></section>
3bd6a82e 337<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="chooseWorkerNode" class="tsd-anchor"></a>
ffc8d144 338<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 339<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
811dc01f 340<li class="tsd-signature tsd-anchor-link" id="chooseWorkerNode.chooseWorkerNode-1"><span class="tsd-kind-call-signature">choose<wbr/>Worker<wbr/>Node</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><a href="#chooseWorkerNode.chooseWorkerNode-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
a76fac14 341<li class="tsd-description">
ffc8d144 342<div class="tsd-comment tsd-typography"><p>Chooses a worker node for the next task.</p>
811dc01f 343<p>The default worker choice strategy uses a round robin algorithm to distribute the load.</p>
a76fac14 344</div>
811dc01f 345<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><p>The worker node key</p>
fab6d3b5 346<aside class="tsd-sources">
6c525543 347<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#chooseWorkerNode">chooseWorkerNode</a></p>
a76fac14 348<ul>
70353024 349<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L498">src/pools/abstract-pool.ts:498</a></li></ul></aside></li></ul></section>
3bd6a82e 350<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="createAndSetupWorker" class="tsd-anchor"></a>
a76fac14 351<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 352<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
8d1797ad 353<li class="tsd-signature tsd-anchor-link" id="createAndSetupWorker.createAndSetupWorker-1"><span class="tsd-kind-call-signature">create<wbr/>And<wbr/>Setup<wbr/>Worker</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type ">Worker</span><a href="#createAndSetupWorker.createAndSetupWorker-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
a76fac14 354<li class="tsd-description">
ffc8d144 355<div class="tsd-comment tsd-typography"><p>Creates a new worker and sets it up completely in the pool worker nodes.</p>
a76fac14 356</div>
fab6d3b5 357<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type ">Worker</span></h4><p>New, completely set up worker.</p>
358<aside class="tsd-sources">
6c525543 359<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#createAndSetupWorker">createAndSetupWorker</a></p>
a76fac14 360<ul>
70353024 361<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L561">src/pools/abstract-pool.ts:561</a></li></ul></aside></li></ul></section>
3bd6a82e 362<section class="tsd-panel tsd-member tsd-is-protected"><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">
8d1797ad 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><span class="tsd-signature-type ">Worker</span><a href="#createWorker.createWorker-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
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 <span class="tsd-signature-type ">Worker</span></h4><aside class="tsd-sources">
6c525543 370<p>Overrides <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#createWorker">createWorker</a></p>
a76fac14 371<ul>
70353024 372<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/cluster/fixed.ts#L88">src/pools/cluster/fixed.ts:88</a></li></ul></aside></li></ul></section>
3bd6a82e 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">
8d1797ad 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">
6c525543 381<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#destroy">destroy</a></p>
a76fac14 382<ul>
70353024 383<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L382">src/pools/abstract-pool.ts:382</a></li></ul></aside></li></ul></section>
3bd6a82e 384<section class="tsd-panel tsd-member tsd-is-protected"><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">
8d1797ad 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">void</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>: <span class="tsd-signature-type ">Worker</span></h5>
6c525543 396<div class="tsd-comment tsd-typography"><p>A worker within <code>workerNodes</code>.</p>
397</div></li></ul></div>
a76fac14 398<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
6c525543 399<p>Overrides <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#destroyWorker">destroyWorker</a></p>
a76fac14 400<ul>
70353024 401<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/cluster/fixed.ts#L69">src/pools/cluster/fixed.ts:69</a></li></ul></aside></li></ul></section>
3bd6a82e 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">
8d1797ad 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>
8d1797ad 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="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#enableTasksQueue">enableTasksQueue</a></p>
422<ul>
70353024 423<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L294">src/pools/abstract-pool.ts:294</a></li></ul></aside></li></ul></section>
3bd6a82e 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">
2c94c3a5 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-kind-parameter">name</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type ">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span><a href="#execute.execute-1" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></li>
a76fac14 428<li class="tsd-description">
1bb559f9 429<div class="tsd-comment tsd-typography"><p>Executes the specified function in the worker constructor with the task data input parameter.</p>
6c525543 430</div>
a76fac14
JB
431<div class="tsd-parameters">
432<h4 class="tsd-parameters-title">Parameters</h4>
433<ul class="tsd-parameter-list">
434<li>
3bd6a82e 435<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 436<div class="tsd-comment tsd-typography"><p>The task input data for the specified worker function. This can only be serializable data.</p>
2c94c3a5 437</div></li>
438<li>
439<h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">name</span>: <span class="tsd-signature-type">string</span></h5>
440<div class="tsd-comment tsd-typography"><p>The name of the worker function to execute. If not specified, the default worker function will be executed.</p>
6c525543 441</div></li></ul></div>
fab6d3b5 442<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type ">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">&gt;</span></h4><p>Promise that will be fulfilled when the task is completed.</p>
443<aside class="tsd-sources">
6c525543 444<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#execute">execute</a></p>
a76fac14 445<ul>
70353024 446<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L347">src/pools/abstract-pool.ts:347</a></li></ul></aside></li></ul></section>
3bd6a82e 447<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="internalBusy" class="tsd-anchor"></a>
0770fe62 448<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 449<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
8d1797ad 450<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
451<li class="tsd-description">
452<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
6c525543 453<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#internalBusy">internalBusy</a></p>
a76fac14 454<ul>
70353024 455<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L338">src/pools/abstract-pool.ts:338</a></li></ul></aside></li></ul></section>
3bd6a82e 456<section class="tsd-panel tsd-member tsd-is-protected"><a id="isMain" class="tsd-anchor"></a>
a76fac14 457<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 458<ul class="tsd-signatures tsd-is-protected">
8d1797ad 459<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 460<li class="tsd-description">
6c525543 461<div class="tsd-comment tsd-typography"><p>Should return whether the worker is the main worker or not.</p>
462</div>
a76fac14 463<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
6c525543 464<p>Overrides <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#isMain">isMain</a></p>
a76fac14 465<ul>
70353024 466<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/cluster/fixed.ts#L64">src/pools/cluster/fixed.ts:64</a></li></ul></aside></li></ul></section>
3bd6a82e 467<section class="tsd-panel tsd-member tsd-is-protected"><a id="registerWorkerMessageListener" class="tsd-anchor"></a>
d6b93f1a 468<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 469<ul class="tsd-signatures tsd-is-protected">
8d1797ad 470<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 471<li class="tsd-description">
6c525543 472<div class="tsd-comment tsd-typography"><p>Registers a listener callback on the given worker.</p>
473</div>
fab6d3b5 474<section class="tsd-panel">
a76fac14 475<h4>Type Parameters</h4>
fab6d3b5 476<ul class="tsd-type-parameter-list">
a76fac14 477<li>
3bd6a82e 478<h4><span class="tsd-kind-type-parameter">Message</span></h4></li></ul></section>
a76fac14
JB
479<div class="tsd-parameters">
480<h4 class="tsd-parameters-title">Parameters</h4>
481<ul class="tsd-parameter-list">
482<li>
3bd6a82e 483<h5><span class="tsd-kind-parameter">worker</span>: <span class="tsd-signature-type ">Worker</span></h5>
6c525543 484<div class="tsd-comment tsd-typography"><p>The worker which should register a listener.</p>
485</div></li>
a76fac14 486<li>
3bd6a82e 487<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 488<div class="tsd-comment tsd-typography"><p>The message listener callback.</p>
489</div>
a76fac14
JB
490<ul class="tsd-parameters">
491<li class="tsd-parameter-signature">
3bd6a82e 492<ul class="tsd-signatures">
493<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
494<li class="tsd-description">
495<div class="tsd-parameters">
496<h4 class="tsd-parameters-title">Parameters</h4>
497<ul class="tsd-parameter-list">
498<li>
2c94c3a5 499<h5><span class="tsd-kind-parameter">message</span>: <a href="../interfaces/MessageValue.html" class="tsd-signature-type tsd-kind-interface">MessageValue</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Message</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type ">Worker</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type ">MessagePort</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
a76fac14
JB
500<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></li></ul></div>
501<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
6c525543 502<p>Overrides <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#registerWorkerMessageListener">registerWorkerMessageListener</a></p>
a76fac14 503<ul>
70353024 504<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/cluster/fixed.ts#L80">src/pools/cluster/fixed.ts:80</a></li></ul></aside></li></ul></section>
3bd6a82e 505<section class="tsd-panel tsd-member tsd-is-protected"><a id="sendToWorker" class="tsd-anchor"></a>
a76fac14 506<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 507<ul class="tsd-signatures tsd-is-protected">
8d1797ad 508<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 509<li class="tsd-description">
6c525543 510<div class="tsd-comment tsd-typography"><p>Sends a message to the given worker.</p>
511</div>
a76fac14
JB
512<div class="tsd-parameters">
513<h4 class="tsd-parameters-title">Parameters</h4>
514<ul class="tsd-parameter-list">
515<li>
3bd6a82e 516<h5><span class="tsd-kind-parameter">worker</span>: <span class="tsd-signature-type ">Worker</span></h5>
6c525543 517<div class="tsd-comment tsd-typography"><p>The worker which should receive the message.</p>
518</div></li>
a76fac14 519<li>
2c94c3a5 520<h5><span class="tsd-kind-parameter">message</span>: <a href="../interfaces/MessageValue.html" class="tsd-signature-type tsd-kind-interface">MessageValue</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type ">Worker</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type ">MessagePort</span><span class="tsd-signature-symbol">&gt;</span></h5>
6c525543 521<div class="tsd-comment tsd-typography"><p>The message.</p>
522</div></li></ul></div>
a76fac14 523<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
6c525543 524<p>Overrides <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#sendToWorker">sendToWorker</a></p>
a76fac14 525<ul>
70353024 526<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/cluster/fixed.ts#L75">src/pools/cluster/fixed.ts:75</a></li></ul></aside></li></ul></section>
3bd6a82e 527<section class="tsd-panel tsd-member tsd-is-inherited"><a id="setTasksQueueOptions" class="tsd-anchor"></a>
6047493a 528<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 529<ul class="tsd-signatures tsd-is-inherited">
8d1797ad 530<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 531<li class="tsd-description">
532<div class="tsd-comment tsd-typography"><p>Sets the worker tasks queue options in this pool.</p>
533</div>
534<div class="tsd-parameters">
535<h4 class="tsd-parameters-title">Parameters</h4>
536<ul class="tsd-parameter-list">
537<li>
8d1797ad 538<h5><span class="tsd-kind-parameter">tasksQueueOptions</span>: <a href="../interfaces/TasksQueueOptions.html" class="tsd-signature-type tsd-kind-interface">TasksQueueOptions</a></h5>
6047493a 539<div class="tsd-comment tsd-typography"><p>The worker tasks queue options.</p>
540</div></li></ul></div>
541<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
542<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#setTasksQueueOptions">setTasksQueueOptions</a></p>
543<ul>
70353024 544<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L306">src/pools/abstract-pool.ts:306</a></li></ul></aside></li></ul></section>
3bd6a82e 545<section class="tsd-panel tsd-member tsd-is-inherited"><a id="setWorkerChoiceStrategy" class="tsd-anchor"></a>
a76fac14 546<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 547<ul class="tsd-signatures tsd-is-inherited">
8d1797ad 548<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 549<li class="tsd-description">
6c525543 550<div class="tsd-comment tsd-typography"><p>Sets the worker choice strategy in this pool.</p>
551</div>
a76fac14
JB
552<div class="tsd-parameters">
553<h4 class="tsd-parameters-title">Parameters</h4>
554<ul class="tsd-parameter-list">
555<li>
811dc01f 556<h5><span class="tsd-kind-parameter">workerChoiceStrategy</span>: <span class="tsd-signature-type">&quot;ROUND_ROBIN&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;LEAST_USED&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;LEAST_BUSY&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;FAIR_SHARE&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;WEIGHTED_ROUND_ROBIN&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;INTERLEAVED_WEIGHTED_ROUND_ROBIN&quot;</span></h5>
6c525543 557<div class="tsd-comment tsd-typography"><p>The worker choice strategy.</p>
a8aeac44 558</div></li>
559<li>
8d1797ad 560<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 561<div class="tsd-comment tsd-typography"><p>The worker choice strategy options.</p>
6c525543 562</div></li></ul></div>
a76fac14 563<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
6c525543 564<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#setWorkerChoiceStrategy">setWorkerChoiceStrategy</a></p>
a76fac14 565<ul>
70353024 566<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L253">src/pools/abstract-pool.ts:253</a></li></ul></aside></li></ul></section>
3bd6a82e 567<section class="tsd-panel tsd-member tsd-is-inherited"><a id="setWorkerChoiceStrategyOptions" class="tsd-anchor"></a>
6047493a 568<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 569<ul class="tsd-signatures tsd-is-inherited">
8d1797ad 570<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 571<li class="tsd-description">
572<div class="tsd-comment tsd-typography"><p>Sets the worker choice strategy options in this pool.</p>
573</div>
574<div class="tsd-parameters">
575<h4 class="tsd-parameters-title">Parameters</h4>
576<ul class="tsd-parameter-list">
577<li>
8d1797ad 578<h5><span class="tsd-kind-parameter">workerChoiceStrategyOptions</span>: <a href="../interfaces/WorkerChoiceStrategyOptions.html" class="tsd-signature-type tsd-kind-interface">WorkerChoiceStrategyOptions</a></h5>
6047493a 579<div class="tsd-comment tsd-typography"><p>The worker choice strategy options.</p>
580</div></li></ul></div>
581<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
582<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#setWorkerChoiceStrategyOptions">setWorkerChoiceStrategyOptions</a></p>
583<ul>
70353024 584<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L283">src/pools/abstract-pool.ts:283</a></li></ul></aside></li></ul></section>
3bd6a82e 585<section class="tsd-panel tsd-member tsd-is-protected"><a id="setupHook" class="tsd-anchor"></a>
a76fac14 586<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 587<ul class="tsd-signatures tsd-is-protected">
8d1797ad 588<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 589<li class="tsd-description">
6c525543 590<div class="tsd-comment tsd-typography"><p>Setup hook to execute code before worker node are created in the abstract constructor.
591Can be overridden</p>
592</div>
a76fac14 593<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
6c525543 594<p>Overrides <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#setupHook">setupHook</a></p>
a76fac14 595<ul>
70353024 596<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/cluster/fixed.ts#L59">src/pools/cluster/fixed.ts:59</a></li></ul></aside></li></ul></section>
3bd6a82e 597<section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="workerListener" class="tsd-anchor"></a>
a76fac14 598<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 599<ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
8d1797ad 600<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 601<li class="tsd-description">
ffc8d144 602<div class="tsd-comment tsd-typography"><p>This function is the listener registered for each worker message.</p>
a76fac14 603</div>
fab6d3b5 604<h4 class="tsd-returns-title">Returns <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">message</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span></h4><p>The listener function to execute when a message is received from a worker.</p>
605
a76fac14
JB
606<ul class="tsd-parameters">
607<li class="tsd-parameter-signature">
3bd6a82e 608<ul class="tsd-signatures">
609<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 610<li class="tsd-description">
ffc8d144 611<div class="tsd-comment tsd-typography"><p>This function is the listener registered for each worker message.</p>
a76fac14
JB
612</div>
613<div class="tsd-parameters">
614<h4 class="tsd-parameters-title">Parameters</h4>
615<ul class="tsd-parameter-list">
616<li>
2c94c3a5 617<h5><span class="tsd-kind-parameter">message</span>: <a href="../interfaces/MessageValue.html" class="tsd-signature-type tsd-kind-interface">MessageValue</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">Response</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type ">Worker</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type ">MessagePort</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
fab6d3b5 618<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><p>The listener function to execute when a message is received from a worker.</p>
619</li></ul></li></ul><aside class="tsd-sources">
6c525543 620<p>Inherited from <a href="AbstractPool.html">AbstractPool</a>.<a href="AbstractPool.html#workerListener">workerListener</a></p>
a76fac14 621<ul>
70353024 622<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/e3ebec7/src/pools/abstract-pool.ts#L594">src/pools/abstract-pool.ts:594</a></li></ul></aside></li></ul></section></section></div>
ec06e4dd 623<div class="col-sidebar">
624<div class="page-menu">
a76fac14
JB
625<div class="tsd-navigation settings">
626<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">
ec06e4dd 627<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
628<div class="tsd-accordion-details">
629<div class="tsd-filter-visibility">
630<h4 class="uppercase">Member Visibility</h4><form>
631<ul id="tsd-filter-options">
632<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>
633<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>
634<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>
635<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>
636<div class="tsd-theme-toggle">
3bd6a82e 637<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 638<details open class="tsd-index-accordion tsd-page-navigation"><summary class="tsd-accordion-summary">
639<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
640<div class="tsd-accordion-details">
641<ul>
3bd6a82e 642<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>
643<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>
644<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>
645<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>
646<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>
647<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>
648<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>
649<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>
650<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>
651<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>
652<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>
653<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>
2c94c3a5 654<li><a href="#size" class=""><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-262144-path"></use><use href="#icon-262144-text"></use></svg><span>size</span></a></li>
3bd6a82e 655<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>
656<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>
657<li><a href="#afterWorkerSetup" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>after<wbr/>Worker<wbr/>Setup</span></a></li>
658<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>
659<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>
660<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>
661<li><a href="#createWorker" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>create<wbr/>Worker</span></a></li>
662<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>
663<li><a href="#destroyWorker" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>destroy<wbr/>Worker</span></a></li>
664<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>
665<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>
3bd6a82e 666<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>
667<li><a href="#isMain" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>is<wbr/>Main</span></a></li>
668<li><a href="#registerWorkerMessageListener" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>register<wbr/>Worker<wbr/>Message<wbr/>Listener</span></a></li>
669<li><a href="#sendToWorker" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>send<wbr/>To<wbr/>Worker</span></a></li>
670<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>
671<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>
672<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>
673<li><a href="#setupHook" class="tsd-is-protected"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-2048-path"></use><use href="#icon-2048-text"></use></svg><span>setup<wbr/>Hook</span></a></li>
674<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 675<div class="site-menu">
676<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>
677<ul class="tsd-small-nested-navigation">
3bd6a82e 678<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>
679<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>
680<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>
681<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>
682<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>
683<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>
684<li><a href="DynamicThreadPool.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-128-path"></use><use href="#icon-128-text"></use></svg><span>Dynamic<wbr/>Thread<wbr/>Pool</span></a></li>
685<li><a href="FixedClusterPool.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>Fixed<wbr/>Cluster<wbr/>Pool</span></a></li>
686<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>
687<li><a href="PoolEmitter.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-128-path"></use><use href="#icon-128-text"></use></svg><span>Pool<wbr/>Emitter</span></a></li>
3a592a12 688<li><a href="Queue.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-128-path"></use><use href="#icon-128-text"></use></svg><span>Queue</span></a></li>
3bd6a82e 689<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>
690<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>
691<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>
692<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>
693<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>
694<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>
695<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>
696<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>
697<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>
698<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>
699<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>
700<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>
701<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>
702<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>
703<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>
704<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>
705<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>
706<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>
707<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>
708<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>
709<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>
710<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>
711<li><a href="../types/PoolEvent.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Pool<wbr/>Event</span></a></li>
2c94c3a5 712<li><a href="../types/TaskFunctions.html"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Task<wbr/>Functions</span></a></li>
3bd6a82e 713<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>
714<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>
715<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>
716<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>
717<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>
718<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>
719<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>
720<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 721<div class="tsd-generator">
a76fac14 722<p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div>
ec06e4dd 723<div class="overlay"></div></body></html>