Add UTs for WorkerChoiceStrategyContext
[poolifier.git] / docs / classes / DynamicClusterPool.html
CommitLineData
24c3fcb4
JB
1<!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>DynamicClusterPool | 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 async src="../assets/search.js" id="search-script"></script></head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">poolifier</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label><input type="checkbox" id="tsd-filter-externals" checked/><label class="tsd-widget" for="tsd-filter-externals">Externals</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><ul class="tsd-breadcrumb"><li><a href="../index.html">poolifier</a></li><li><a href="DynamicClusterPool.html">DynamicClusterPool</a></li></ul><h1>Class DynamicClusterPool&lt;Data, Response&gt;</h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><div class="lead">
2<p>A cluster pool with a dynamic number of workers, but a guaranteed minimum number of workers.</p>
3</div><div><p>This cluster pool creates new workers when the others are busy, up to the maximum number of workers.
4When the maximum number of workers is reached, an event is emitted. If you want to listen to this event, use the pool&#39;s <code>emitter</code>.</p>
5</div><dl class="tsd-comment-tags"><dt>template DataType</dt><dd><p>of data sent to the worker. This can only be serializable data.</p>
6</dd><dt>template ResponseType</dt><dd><p>of response of execution. This can only be serializable data.</p>
7</dd><dt>author</dt><dd><p><a href="https://github.com/Shinigami92">Christopher Quadflieg</a></p>
8</dd><dt>since</dt><dd><p>2.0.0</p>
d0f1dce3 9</dd></dl></div></section><section class="tsd-panel tsd-type-parameters"><h3>Type parameters</h3><ul class="tsd-type-parameters"><li><h4>Data = <span class="tsd-signature-type">unknown</span></h4></li><li><h4>Response = <span class="tsd-signature-type">unknown</span></h4></li></ul></section><section class="tsd-panel tsd-hierarchy"><h3>Hierarchy</h3><ul class="tsd-hierarchy"><li><a href="FixedClusterPool.html" class="tsd-signature-type" data-tsd-kind="Class">FixedClusterPool</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Response</span><span class="tsd-signature-symbol">&gt;</span><ul class="tsd-hierarchy"><li><span class="target">DynamicClusterPool</span></li></ul></li></ul></section><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Constructors</h3><ul class="tsd-index-list"><li class="tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter tsd-is-overwrite"><a href="DynamicClusterPool.html#constructor" class="tsd-kind-icon">constructor</a></li></ul></section><section class="tsd-index-section tsd-is-inherited"><h3>Properties</h3><ul class="tsd-index-list"><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#emitter" class="tsd-kind-icon">emitter</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#filePath" class="tsd-kind-icon">file<wbr/>Path</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#max" class="tsd-kind-icon">max</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#nextMessageId" class="tsd-kind-icon">next<wbr/>Message<wbr/>Id</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#numberOfWorkers" class="tsd-kind-icon">number<wbr/>Of<wbr/>Workers</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#opts" class="tsd-kind-icon">opts</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#promiseMap" class="tsd-kind-icon">promise<wbr/>Map</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#tasks" class="tsd-kind-icon">tasks</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#workerChoiceStrategyContext" class="tsd-kind-icon">worker<wbr/>Choice<wbr/>Strategy<wbr/>Context</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#workers" class="tsd-kind-icon">workers</a></li></ul></section><section class="tsd-index-section "><h3>Accessors</h3><ul class="tsd-index-list"><li class="tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite"><a href="DynamicClusterPool.html#busy" class="tsd-kind-icon">busy</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#numberOfRunningTasks" class="tsd-kind-icon">number<wbr/>Of<wbr/>Running<wbr/>Tasks</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite"><a href="DynamicClusterPool.html#type" class="tsd-kind-icon">type</a></li></ul></section><section class="tsd-index-section tsd-is-inherited"><h3>Methods</h3><ul class="tsd-index-list"><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#afterWorkerSetup" class="tsd-kind-icon">after<wbr/>Worker<wbr/>Setup</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#chooseWorker" class="tsd-kind-icon">choose<wbr/>Worker</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#createAndSetupWorker" class="tsd-kind-icon">create<wbr/>And<wbr/>Setup<wbr/>Worker</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#createWorker" class="tsd-kind-icon">create<wbr/>Worker</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#decreaseWorkersTasks" class="tsd-kind-icon">decrease<wbr/>Workers<wbr/>Tasks</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#destroy" class="tsd-kind-icon">destroy</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#destroyWorker" class="tsd-kind-icon">destroy<wbr/>Worker</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#execute" class="tsd-kind-icon">execute</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#findFreeTasksMapEntry" class="tsd-kind-icon">find<wbr/>Free<wbr/>Tasks<wbr/>Map<wbr/>Entry</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#increaseWorkersTask" class="tsd-kind-icon">increase<wbr/>Workers<wbr/>Task</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#internalExecute" class="tsd-kind-icon">internal<wbr/>Execute</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#internalGetBusyStatus" class="tsd-kind-icon">internal<wbr/>Get<wbr/>Busy<wbr/>Status</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#isMain" class="tsd-kind-icon">is<wbr/>Main</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-inherited"><a href="DynamicClusterPool.html#registerWorkerMessageListener" class="tsd-kind-icon">register<wbr/>Worker<wbr/>Message<wbr/>Listener</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#removeWorker" class="tsd-kind-icon">remove<wbr/>Worker</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#sendToWorker" class="tsd-kind-icon">send<wbr/>To<wbr/>Worker</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#setWorkerChoiceStrategy" class="tsd-kind-icon">set<wbr/>Worker<wbr/>Choice<wbr/>Strategy</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#setupHook" class="tsd-kind-icon">setup<wbr/>Hook</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#workerListener" class="tsd-kind-icon">worker<wbr/>Listener</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Constructors</h2><section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter tsd-is-overwrite"><a id="constructor" class="tsd-anchor"></a><h3>constructor</h3><ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter tsd-is-overwrite"><li class="tsd-signature tsd-kind-icon">new <wbr/>Dynamic<wbr/>Cluster<wbr/>Pool<span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Response</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span>min<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, max<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, filePath<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, opts<span class="tsd-signature-symbol">?: </span><a href="../interfaces/ClusterPoolOptions.html" class="tsd-signature-type" data-tsd-kind="Interface">ClusterPoolOptions</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="DynamicClusterPool.html" class="tsd-signature-type" data-tsd-kind="Class">DynamicClusterPool</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Response</span><span class="tsd-signature-symbol">&gt;</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Overrides <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#constructor">constructor</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/cluster/dynamic.ts#L28">src/pools/cluster/dynamic.ts:28</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
24c3fcb4
JB
10<p>Constructs a new poolifier dynamic cluster pool.</p>
11</div></div><h4 class="tsd-type-parameters-title">Type parameters</h4><ul class="tsd-type-parameters"><li><h4>Data = <span class="tsd-signature-type">unknown</span></h4></li><li><h4>Response = <span class="tsd-signature-type">unknown</span></h4></li></ul><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>min: <span class="tsd-signature-type">number</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
12<p>Minimum number of workers which are always active.</p>
13</div></div></li><li><h5>max: <span class="tsd-signature-type">number</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
14<p>Maximum number of workers that can be created by this pool.</p>
15</div></div></li><li><h5>filePath: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
16<p>Path to an implementation of a <code>ClusterWorker</code> file, which can be relative or absolute.</p>
d0f1dce3 17</div></div></li><li><h5>opts: <a href="../interfaces/ClusterPoolOptions.html" class="tsd-signature-type" data-tsd-kind="Interface">ClusterPoolOptions</a><span class="tsd-signature-symbol"> = {}</span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="DynamicClusterPool.html" class="tsd-signature-type" data-tsd-kind="Class">DynamicClusterPool</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Response</span><span class="tsd-signature-symbol">&gt;</span></h4></li></ul></section></section><section class="tsd-panel-group tsd-member-group tsd-is-inherited"><h2>Properties</h2><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a id="emitter" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagOptional">Optional</span> <span class="tsd-flag ts-flagReadonly">Readonly</span> emitter</h3><div class="tsd-signature tsd-kind-icon">emitter<span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">PoolEmitter</span></div><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#emitter">emitter</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L127">src/pools/abstract-pool.ts:127</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a id="filePath" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagReadonly">Readonly</span> file<wbr/>Path</h3><div class="tsd-signature tsd-kind-icon">file<wbr/>Path<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#filePath">filePath</a></p></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a id="max" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagReadonly">Readonly</span> max</h3><div class="tsd-signature tsd-kind-icon">max<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#max">max</a></p></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="nextMessageId" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> next<wbr/>Message<wbr/>Id</h3><div class="tsd-signature tsd-kind-icon">next<wbr/>Message<wbr/>Id<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 0</span></div><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#nextMessageId">nextMessageId</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L148">src/pools/abstract-pool.ts:148</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
24c3fcb4 18<p>Id of the next message.</p>
d0f1dce3 19</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a id="numberOfWorkers" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagReadonly">Readonly</span> number<wbr/>Of<wbr/>Workers</h3><div class="tsd-signature tsd-kind-icon">number<wbr/>Of<wbr/>Workers<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#numberOfWorkers">numberOfWorkers</a></p></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a id="opts" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagReadonly">Readonly</span> opts</h3><div class="tsd-signature tsd-kind-icon">opts<span class="tsd-signature-symbol">:</span> <a href="../interfaces/ClusterPoolOptions.html" class="tsd-signature-type" data-tsd-kind="Interface">ClusterPoolOptions</a><span class="tsd-signature-symbol"> = {}</span></div><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#opts">opts</a></p></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="promiseMap" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> promise<wbr/>Map</h3><div class="tsd-signature tsd-kind-icon">promise<wbr/>Map<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">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">PromiseWorkerResponseWrapper</span><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" data-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><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#promiseMap">promiseMap</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L140">src/pools/abstract-pool.ts:140</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
24c3fcb4
JB
20<p>The promise map.</p>
21</div><div><ul>
22<li><code>key</code>: This is the message Id of each submitted task.</li>
23<li><code>value</code>: An object that contains the worker, the resolve function and the reject function.</li>
24</ul>
25<p>When we receive a message from the worker we get a map entry and resolve/reject the promise based on the message.</p>
d0f1dce3 26</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a id="tasks" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagReadonly">Readonly</span> tasks</h3><div class="tsd-signature tsd-kind-icon">tasks<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">Worker</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#tasks">tasks</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L124">src/pools/abstract-pool.ts:124</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="workerChoiceStrategyContext" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> worker<wbr/>Choice<wbr/>Strategy<wbr/>Context</h3><div class="tsd-signature tsd-kind-icon">worker<wbr/>Choice<wbr/>Strategy<wbr/>Context<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">WorkerChoiceStrategyContext</span><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" data-tsd-kind="Type parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Response</span><span class="tsd-signature-symbol">&gt;</span></div><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#workerChoiceStrategyContext">workerChoiceStrategyContext</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L155">src/pools/abstract-pool.ts:155</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
24c3fcb4
JB
27<p>Worker choice strategy instance implementing the worker choice algorithm.</p>
28</div><div><p>Default to a strategy implementing a round robin algorithm.</p>
d0f1dce3 29</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a id="workers" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagReadonly">Readonly</span> workers</h3><div class="tsd-signature tsd-kind-icon">workers<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Worker</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> = []</span></div><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#workers">workers</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L121">src/pools/abstract-pool.ts:121</a></li></ul></aside></section></section><section class="tsd-panel-group tsd-member-group "><h2>Accessors</h2><section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite"><a id="busy" class="tsd-anchor"></a><h3>busy</h3><ul class="tsd-signatures tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite"><li class="tsd-signature tsd-kind-icon"><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></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Overrides FixedClusterPool.busy</p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/cluster/dynamic.ts#L43">src/pools/cluster/dynamic.ts:43</a></li></ul></aside><div class="tsd-comment tsd-typography"><dl class="tsd-comment-tags"><dt>inheritdoc</dt><dd></dd></dl></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited"><a id="numberOfRunningTasks" class="tsd-anchor"></a><h3>number<wbr/>Of<wbr/>Running<wbr/>Tasks</h3><ul class="tsd-signatures tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited"><li class="tsd-signature tsd-kind-icon"><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></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from FixedClusterPool.numberOfRunningTasks</p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L242">src/pools/abstract-pool.ts:242</a></li></ul></aside><div class="tsd-comment tsd-typography"><dl class="tsd-comment-tags"><dt>inheritdoc</dt><dd></dd></dl></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite"><a id="type" class="tsd-anchor"></a><h3>type</h3><ul class="tsd-signatures tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite"><li class="tsd-signature tsd-kind-icon"><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><span class="tsd-signature-type">PoolType</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Overrides FixedClusterPool.type</p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/cluster/dynamic.ts#L38">src/pools/cluster/dynamic.ts:38</a></li></ul></aside><div class="tsd-comment tsd-typography"><dl class="tsd-comment-tags"><dt>inheritdoc</dt><dd></dd></dl></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">PoolType</span></h4></li></ul></section></section><section class="tsd-panel-group tsd-member-group tsd-is-inherited"><h2>Methods</h2><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="afterWorkerSetup" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> after<wbr/>Worker<wbr/>Setup</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><li class="tsd-signature tsd-kind-icon">after<wbr/>Worker<wbr/>Setup<span class="tsd-signature-symbol">(</span>worker<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Worker</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#afterWorkerSetup">afterWorkerSetup</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/cluster/fixed.ts#L89">src/pools/cluster/fixed.ts:89</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>worker: <span class="tsd-signature-type">Worker</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="chooseWorker" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> choose<wbr/>Worker</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><li class="tsd-signature tsd-kind-icon">choose<wbr/>Worker<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></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#chooseWorker">chooseWorker</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L365">src/pools/abstract-pool.ts:365</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
24c3fcb4
JB
30<p>Choose a worker for the next task.</p>
31</div><div><p>The default implementation uses a round robin algorithm to distribute the load.</p>
32</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Worker</span></h4><div><p>Worker.</p>
d0f1dce3 33</div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="createAndSetupWorker" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> create<wbr/>And<wbr/>Setup<wbr/>Worker</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><li class="tsd-signature tsd-kind-icon">create<wbr/>And<wbr/>Setup<wbr/>Worker<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></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#createAndSetupWorker">createAndSetupWorker</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L419">src/pools/abstract-pool.ts:419</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
24c3fcb4
JB
34<p>Creates a new worker for this pool and sets it up completely.</p>
35</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Worker</span></h4><div><p>New, completely set up worker.</p>
d0f1dce3 36</div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="createWorker" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> create<wbr/>Worker</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><li class="tsd-signature tsd-kind-icon">create<wbr/>Worker<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></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#createWorker">createWorker</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/cluster/fixed.ts#L84">src/pools/cluster/fixed.ts:84</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Worker</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="decreaseWorkersTasks" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> decrease<wbr/>Workers<wbr/>Tasks</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><li class="tsd-signature tsd-kind-icon">decrease<wbr/>Workers<wbr/>Tasks<span class="tsd-signature-symbol">(</span>worker<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Worker</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#decreaseWorkersTasks">decreaseWorkersTasks</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L327">src/pools/abstract-pool.ts:327</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
24c3fcb4
JB
37<p>Decrease the number of tasks that the given worker has applied.</p>
38</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>worker: <span class="tsd-signature-type">Worker</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
39<p>Worker whose tasks are decreased.</p>
d0f1dce3 40</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a id="destroy" class="tsd-anchor"></a><h3>destroy</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><li class="tsd-signature tsd-kind-icon">destroy<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></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#destroy">destroy</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L289">src/pools/abstract-pool.ts:289</a></li></ul></aside><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></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a id="destroyWorker" class="tsd-anchor"></a><h3>destroy<wbr/>Worker</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><li class="tsd-signature tsd-kind-icon">destroy<wbr/>Worker<span class="tsd-signature-symbol">(</span>worker<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Worker</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#destroyWorker">destroyWorker</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/cluster/fixed.ts#L65">src/pools/cluster/fixed.ts:65</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>worker: <span class="tsd-signature-type">Worker</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a id="execute" class="tsd-anchor"></a><h3>execute</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><li class="tsd-signature tsd-kind-icon">execute<span class="tsd-signature-symbol">(</span>data<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Data</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" data-tsd-kind="Type parameter">Response</span><span class="tsd-signature-symbol">&gt;</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#execute">execute</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L278">src/pools/abstract-pool.ts:278</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>data: <span class="tsd-signature-type" data-tsd-kind="Type parameter">Data</span></h5></li></ul><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" data-tsd-kind="Type parameter">Response</span><span class="tsd-signature-symbol">&gt;</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a id="findFreeTasksMapEntry" class="tsd-anchor"></a><h3>find<wbr/>Free<wbr/>Tasks<wbr/>Map<wbr/>Entry</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><li class="tsd-signature tsd-kind-icon">find<wbr/>Free<wbr/>Tasks<wbr/>Map<wbr/>Entry<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">false</span><span class="tsd-signature-symbol"> | </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">number</span><span class="tsd-signature-symbol">]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#findFreeTasksMapEntry">findFreeTasksMapEntry</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L267">src/pools/abstract-pool.ts:267</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">false</span><span class="tsd-signature-symbol"> | </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">number</span><span class="tsd-signature-symbol">]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="increaseWorkersTask" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> increase<wbr/>Workers<wbr/>Task</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><li class="tsd-signature tsd-kind-icon">increase<wbr/>Workers<wbr/>Task<span class="tsd-signature-symbol">(</span>worker<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Worker</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#increaseWorkersTask">increaseWorkersTask</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L318">src/pools/abstract-pool.ts:318</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
24c3fcb4
JB
41<p>Increase the number of tasks that the given worker has applied.</p>
42</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>worker: <span class="tsd-signature-type">Worker</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
43<p>Worker whose tasks are increased.</p>
d0f1dce3 44</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="internalExecute" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> internal<wbr/>Execute</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><li class="tsd-signature tsd-kind-icon">internal<wbr/>Execute<span class="tsd-signature-symbol">(</span>worker<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Worker</span>, messageId<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</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" data-tsd-kind="Type parameter">Response</span><span class="tsd-signature-symbol">&gt;</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#internalExecute">internalExecute</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L390">src/pools/abstract-pool.ts:390</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>worker: <span class="tsd-signature-type">Worker</span></h5></li><li><h5>messageId: <span class="tsd-signature-type">number</span></h5></li></ul><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" data-tsd-kind="Type parameter">Response</span><span class="tsd-signature-symbol">&gt;</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="internalGetBusyStatus" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> internal<wbr/>Get<wbr/>Busy<wbr/>Status</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><li class="tsd-signature tsd-kind-icon">internal<wbr/>Get<wbr/>Busy<wbr/>Status<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></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#internalGetBusyStatus">internalGetBusyStatus</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L259">src/pools/abstract-pool.ts:259</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="isMain" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> is<wbr/>Main</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><li class="tsd-signature tsd-kind-icon">is<wbr/>Main<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></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#isMain">isMain</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/cluster/fixed.ts#L60">src/pools/cluster/fixed.ts:60</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-inherited"><a id="registerWorkerMessageListener" class="tsd-anchor"></a><h3>register<wbr/>Worker<wbr/>Message<wbr/>Listener</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-inherited"><li class="tsd-signature tsd-kind-icon">register<wbr/>Worker<wbr/>Message<wbr/>Listener<span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Message</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span>worker<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Worker</span>, listener<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span>message<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">MessageValue</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Message</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">&gt;</span><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><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#registerWorkerMessageListener">registerWorkerMessageListener</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/cluster/fixed.ts#L76">src/pools/cluster/fixed.ts:76</a></li></ul></aside><h4 class="tsd-type-parameters-title">Type parameters</h4><ul class="tsd-type-parameters"><li><h4>Message</h4></li></ul><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>worker: <span class="tsd-signature-type">Worker</span></h5></li><li><h5>listener: <span class="tsd-signature-symbol">(</span>message<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">MessageValue</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Message</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></h5><ul class="tsd-parameters"><li class="tsd-parameter-signature"><ul class="tsd-signatures tsd-kind-type-literal"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>message<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">MessageValue</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Message</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>message: <span class="tsd-signature-type">MessageValue</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Message</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="removeWorker" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> remove<wbr/>Worker</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><li class="tsd-signature tsd-kind-icon">remove<wbr/>Worker<span class="tsd-signature-symbol">(</span>worker<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Worker</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#removeWorker">removeWorker</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L351">src/pools/abstract-pool.ts:351</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
24c3fcb4
JB
45<p>Removes the given worker from the pool.</p>
46</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>worker: <span class="tsd-signature-type">Worker</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
47<p>Worker that will be removed.</p>
d0f1dce3 48</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="sendToWorker" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> send<wbr/>To<wbr/>Worker</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><li class="tsd-signature tsd-kind-icon">send<wbr/>To<wbr/>Worker<span class="tsd-signature-symbol">(</span>worker<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Worker</span>, message<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">MessageValue</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#sendToWorker">sendToWorker</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/cluster/fixed.ts#L71">src/pools/cluster/fixed.ts:71</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>worker: <span class="tsd-signature-type">Worker</span></h5></li><li><h5>message: <span class="tsd-signature-type">MessageValue</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Data</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a id="setWorkerChoiceStrategy" class="tsd-anchor"></a><h3>set<wbr/>Worker<wbr/>Choice<wbr/>Strategy</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><li class="tsd-signature tsd-kind-icon">set<wbr/>Worker<wbr/>Choice<wbr/>Strategy<span class="tsd-signature-symbol">(</span>workerChoiceStrategy<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">&quot;ROUND_ROBIN&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;LESS_RECENTLY_USED&quot;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#setWorkerChoiceStrategy">setWorkerChoiceStrategy</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L247">src/pools/abstract-pool.ts:247</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>workerChoiceStrategy: <span class="tsd-signature-type">&quot;ROUND_ROBIN&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;LESS_RECENTLY_USED&quot;</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="setupHook" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> setup<wbr/>Hook</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><li class="tsd-signature tsd-kind-icon">setup<wbr/>Hook<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></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#setupHook">setupHook</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/cluster/fixed.ts#L53">src/pools/cluster/fixed.ts:53</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a id="workerListener" class="tsd-anchor"></a><h3><span class="tsd-flag ts-flagProtected">Protected</span> worker<wbr/>Listener</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><li class="tsd-signature tsd-kind-icon">worker<wbr/>Listener<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span>message<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">MessageValue</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Response</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Inherited from <a href="FixedClusterPool.html">FixedClusterPool</a>.<a href="FixedClusterPool.html#workerListener">workerListener</a></p><ul><li>Defined in <a href="https://github.com/poolifier/poolifier/blob/0136f64/src/pools/abstract-pool.ts#L443">src/pools/abstract-pool.ts:443</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
24c3fcb4
JB
49<p>This function is the listener registered for each worker.</p>
50</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-symbol">(</span>message<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">MessageValue</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Response</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></h4><div><p>The listener function to execute when a message is sent from a worker.</p>
51</div><ul class="tsd-parameters"><li class="tsd-parameter-signature"><ul class="tsd-signatures tsd-kind-type-literal"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>message<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">MessageValue</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Response</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography"><div class="lead">
52<p>This function is the listener registered for each worker.</p>
53</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>message: <span class="tsd-signature-type">MessageValue</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">Response</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><div><p>The listener function to execute when a message is sent from a worker.</p>
54</div></li></ul></li></ul></li></ul></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class=""><a href="../index.html">Exports</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="current tsd-kind-class tsd-has-type-parameter"><a href="DynamicClusterPool.html" class="tsd-kind-icon">Dynamic<wbr/>Cluster<wbr/>Pool</a><ul><li class="tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter tsd-is-overwrite"><a href="DynamicClusterPool.html#constructor" class="tsd-kind-icon">constructor</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#emitter" class="tsd-kind-icon">emitter</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#filePath" class="tsd-kind-icon">file<wbr/>Path</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#max" class="tsd-kind-icon">max</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#nextMessageId" class="tsd-kind-icon">next<wbr/>Message<wbr/>Id</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#numberOfWorkers" class="tsd-kind-icon">number<wbr/>Of<wbr/>Workers</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#opts" class="tsd-kind-icon">opts</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#promiseMap" class="tsd-kind-icon">promise<wbr/>Map</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#tasks" class="tsd-kind-icon">tasks</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#workerChoiceStrategyContext" class="tsd-kind-icon">worker<wbr/>Choice<wbr/>Strategy<wbr/>Context</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#workers" class="tsd-kind-icon">workers</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite"><a href="DynamicClusterPool.html#busy" class="tsd-kind-icon">busy</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#numberOfRunningTasks" class="tsd-kind-icon">number<wbr/>Of<wbr/>Running<wbr/>Tasks</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite"><a href="DynamicClusterPool.html#type" class="tsd-kind-icon">type</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#afterWorkerSetup" class="tsd-kind-icon">after<wbr/>Worker<wbr/>Setup</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#chooseWorker" class="tsd-kind-icon">choose<wbr/>Worker</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#createAndSetupWorker" class="tsd-kind-icon">create<wbr/>And<wbr/>Setup<wbr/>Worker</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#createWorker" class="tsd-kind-icon">create<wbr/>Worker</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#decreaseWorkersTasks" class="tsd-kind-icon">decrease<wbr/>Workers<wbr/>Tasks</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#destroy" class="tsd-kind-icon">destroy</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#destroyWorker" class="tsd-kind-icon">destroy<wbr/>Worker</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#execute" class="tsd-kind-icon">execute</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#findFreeTasksMapEntry" class="tsd-kind-icon">find<wbr/>Free<wbr/>Tasks<wbr/>Map<wbr/>Entry</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#increaseWorkersTask" class="tsd-kind-icon">increase<wbr/>Workers<wbr/>Task</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#internalExecute" class="tsd-kind-icon">internal<wbr/>Execute</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#internalGetBusyStatus" class="tsd-kind-icon">internal<wbr/>Get<wbr/>Busy<wbr/>Status</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#isMain" class="tsd-kind-icon">is<wbr/>Main</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-inherited"><a href="DynamicClusterPool.html#registerWorkerMessageListener" class="tsd-kind-icon">register<wbr/>Worker<wbr/>Message<wbr/>Listener</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#removeWorker" class="tsd-kind-icon">remove<wbr/>Worker</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#sendToWorker" class="tsd-kind-icon">send<wbr/>To<wbr/>Worker</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a href="DynamicClusterPool.html#setWorkerChoiceStrategy" class="tsd-kind-icon">set<wbr/>Worker<wbr/>Choice<wbr/>Strategy</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#setupHook" class="tsd-kind-icon">setup<wbr/>Hook</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-protected"><a href="DynamicClusterPool.html#workerListener" class="tsd-kind-icon">worker<wbr/>Listener</a></li></ul></li></ul></nav></div></div></div><footer class="with-border-bottom"><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited property</span></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected property</span></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private method</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="container tsd-generator"><p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div><div class="overlay"></div><script src="../assets/main.js"></script></body></html>