2 <html class=
"default no-js">
5 <meta http-equiv=
"X-UA-Compatible" content=
"IE=edge">
6 <title>FixedClusterPool | poolifier
</title>
7 <meta name=
"description" content=
"Documentation for poolifier">
8 <meta name=
"viewport" content=
"width=device-width, initial-scale=1">
9 <link rel=
"stylesheet" href=
"../assets/css/main.css">
10 <script async
src=
"../assets/js/search.js" id=
"search-script"></script>
14 <div class=
"tsd-page-toolbar">
15 <div class=
"container">
16 <div class=
"table-wrap">
17 <div class=
"table-cell" id=
"tsd-search" data-index=
"../assets/js/search.json" data-base=
"..">
19 <label for=
"tsd-search-field" class=
"tsd-widget search no-caption">Search
</label>
20 <input id=
"tsd-search-field" type=
"text" />
23 <li class=
"state loading">Preparing search index...
</li>
24 <li class=
"state failure">The search index is not available
</li>
26 <a href=
"../index.html" class=
"title">poolifier
</a>
28 <div class=
"table-cell" id=
"tsd-widgets">
30 <a href=
"#" class=
"tsd-widget options no-caption" data-toggle=
"options">Options
</a>
31 <div class=
"tsd-filter-group">
32 <div class=
"tsd-select" id=
"tsd-filter-visibility">
33 <span class=
"tsd-select-label">All
</span>
34 <ul class=
"tsd-select-list">
35 <li data-value=
"public">Public
</li>
36 <li data-value=
"protected">Public/Protected
</li>
37 <li data-value=
"private" class=
"selected">All
</li>
40 <input type=
"checkbox" id=
"tsd-filter-inherited" checked
/>
41 <label class=
"tsd-widget" for=
"tsd-filter-inherited">Inherited
</label>
42 <input type=
"checkbox" id=
"tsd-filter-externals" checked
/>
43 <label class=
"tsd-widget" for=
"tsd-filter-externals">Externals
</label>
46 <a href=
"#" class=
"tsd-widget menu no-caption" data-toggle=
"menu">Menu
</a>
51 <div class=
"tsd-page-title">
52 <div class=
"container">
53 <ul class=
"tsd-breadcrumb">
55 <a href=
"../index.html">poolifier
</a>
58 <a href=
"fixedclusterpool.html">FixedClusterPool
</a>
61 <h1>Class FixedClusterPool
<Data, Response
></h1>
65 <div class=
"container container-main">
67 <div class=
"col-8 col-content">
68 <section class=
"tsd-panel tsd-comment">
69 <div class=
"tsd-comment tsd-typography">
71 <p>A cluster pool with a fixed number of workers.
</p>
73 <p>It is possible to perform tasks in sync or asynchronous mode as you prefer.
</p>
74 <p>This pool selects the workers in a round robin fashion.
</p>
75 <dl class=
"tsd-comment-tags">
77 <dd><p><a href=
"https://github.com/Shinigami92">Christopher Quadflieg
</a></p>
85 <section class=
"tsd-panel tsd-type-parameters">
86 <h3>Type parameters
</h3>
87 <ul class=
"tsd-type-parameters">
89 <h4>Data =
<span class=
"tsd-signature-type">unknown
</span></h4>
90 <div class=
"tsd-comment tsd-typography">
92 <p>Type of data sent to the worker. This can only be serializable data.
</p>
97 <h4>Response =
<span class=
"tsd-signature-type">unknown
</span></h4>
98 <div class=
"tsd-comment tsd-typography">
100 <p>Type of response of execution. This can only be serializable data.
</p>
106 <section class=
"tsd-panel tsd-hierarchy">
108 <ul class=
"tsd-hierarchy">
110 <span class=
"tsd-signature-type">AbstractPool
</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">Data
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">Response
</span><span class=
"tsd-signature-symbol">></span>
111 <ul class=
"tsd-hierarchy">
113 <span class=
"target">FixedClusterPool
</span>
114 <ul class=
"tsd-hierarchy">
116 <a href=
"dynamicclusterpool.html" class=
"tsd-signature-type" data-tsd-kind=
"Class">DynamicClusterPool
</a>
124 <section class=
"tsd-panel-group tsd-index-group">
126 <section class=
"tsd-panel tsd-index-panel">
127 <div class=
"tsd-index-content">
128 <section class=
"tsd-index-section ">
129 <h3>Constructors
</h3>
130 <ul class=
"tsd-index-list">
131 <li class=
"tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter"><a href=
"fixedclusterpool.html#constructor" class=
"tsd-kind-icon">constructor
</a></li>
134 <section class=
"tsd-index-section ">
136 <ul class=
"tsd-index-list">
137 <li class=
"tsd-kind-property tsd-parent-kind-class"><a href=
"fixedclusterpool.html#emitter" class=
"tsd-kind-icon">emitter
</a></li>
138 <li class=
"tsd-kind-property tsd-parent-kind-class"><a href=
"fixedclusterpool.html#filepath" class=
"tsd-kind-icon">file
<wbr>Path
</a></li>
139 <li class=
"tsd-kind-property tsd-parent-kind-class tsd-is-protected"><a href=
"fixedclusterpool.html#nextmessageid" class=
"tsd-kind-icon">next
<wbr>Message
<wbr>Id
</a></li>
140 <li class=
"tsd-kind-property tsd-parent-kind-class"><a href=
"fixedclusterpool.html#numberofworkers" class=
"tsd-kind-icon">number
<wbr>OfWorkers
</a></li>
141 <li class=
"tsd-kind-property tsd-parent-kind-class"><a href=
"fixedclusterpool.html#opts" class=
"tsd-kind-icon">opts
</a></li>
142 <li class=
"tsd-kind-property tsd-parent-kind-class tsd-is-protected"><a href=
"fixedclusterpool.html#promisemap" class=
"tsd-kind-icon">promise
<wbr>Map
</a></li>
143 <li class=
"tsd-kind-property tsd-parent-kind-class"><a href=
"fixedclusterpool.html#tasks" class=
"tsd-kind-icon">tasks
</a></li>
144 <li class=
"tsd-kind-property tsd-parent-kind-class tsd-is-protected"><a href=
"fixedclusterpool.html#workerchoicestrategycontext" class=
"tsd-kind-icon">worker
<wbr>Choice
<wbr>Strategy
<wbr>Context
</a></li>
145 <li class=
"tsd-kind-property tsd-parent-kind-class"><a href=
"fixedclusterpool.html#workers" class=
"tsd-kind-icon">workers
</a></li>
148 <section class=
"tsd-index-section ">
150 <ul class=
"tsd-index-list">
151 <li class=
"tsd-kind-get-signature tsd-parent-kind-class"><a href=
"fixedclusterpool.html#dynamic" class=
"tsd-kind-icon">dynamic
</a></li>
154 <section class=
"tsd-index-section ">
156 <ul class=
"tsd-index-list">
157 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href=
"fixedclusterpool.html#afterworkersetup" class=
"tsd-kind-icon">after
<wbr>Worker
<wbr>Setup
</a></li>
158 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href=
"fixedclusterpool.html#chooseworker" class=
"tsd-kind-icon">choose
<wbr>Worker
</a></li>
159 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href=
"fixedclusterpool.html#createandsetupworker" class=
"tsd-kind-icon">create
<wbr>And
<wbr>Setup
<wbr>Worker
</a></li>
160 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href=
"fixedclusterpool.html#createworker" class=
"tsd-kind-icon">create
<wbr>Worker
</a></li>
161 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href=
"fixedclusterpool.html#decreaseworkerstasks" class=
"tsd-kind-icon">decrease
<wbr>Workers
<wbr>Tasks
</a></li>
162 <li class=
"tsd-kind-method tsd-parent-kind-class"><a href=
"fixedclusterpool.html#destroy" class=
"tsd-kind-icon">destroy
</a></li>
163 <li class=
"tsd-kind-method tsd-parent-kind-class"><a href=
"fixedclusterpool.html#destroyworker" class=
"tsd-kind-icon">destroy
<wbr>Worker
</a></li>
164 <li class=
"tsd-kind-method tsd-parent-kind-class"><a href=
"fixedclusterpool.html#execute" class=
"tsd-kind-icon">execute
</a></li>
165 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href=
"fixedclusterpool.html#increaseworkerstask" class=
"tsd-kind-icon">increase
<wbr>Workers
<wbr>Task
</a></li>
166 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href=
"fixedclusterpool.html#internalexecute" class=
"tsd-kind-icon">internal
<wbr>Execute
</a></li>
167 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href=
"fixedclusterpool.html#ismain" class=
"tsd-kind-icon">is
<wbr>Main
</a></li>
168 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter"><a href=
"fixedclusterpool.html#registerworkermessagelistener" class=
"tsd-kind-icon">register
<wbr>Worker
<wbr>Message
<wbr>Listener
</a></li>
169 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href=
"fixedclusterpool.html#removeworker" class=
"tsd-kind-icon">remove
<wbr>Worker
</a></li>
170 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href=
"fixedclusterpool.html#sendtoworker" class=
"tsd-kind-icon">send
<wbr>ToWorker
</a></li>
171 <li class=
"tsd-kind-method tsd-parent-kind-class"><a href=
"fixedclusterpool.html#setworkerchoicestrategy" class=
"tsd-kind-icon">set
<wbr>Worker
<wbr>Choice
<wbr>Strategy
</a></li>
172 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href=
"fixedclusterpool.html#setuphook" class=
"tsd-kind-icon">setup
<wbr>Hook
</a></li>
173 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href=
"fixedclusterpool.html#workerlistener" class=
"tsd-kind-icon">worker
<wbr>Listener
</a></li>
179 <section class=
"tsd-panel-group tsd-member-group ">
180 <h2>Constructors
</h2>
181 <section class=
"tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter">
182 <a name=
"constructor" class=
"tsd-anchor"></a>
184 <ul class=
"tsd-signatures tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter">
185 <li class=
"tsd-signature tsd-kind-icon">new
<wbr>Fixed
<wbr>Cluster
<wbr>Pool
<Data, Response
><span class=
"tsd-signature-symbol">(
</span>numberOfWorkers
<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=
"fixedclusterpool.html" class=
"tsd-signature-type" data-tsd-kind=
"Class">FixedClusterPool
</a><span class=
"tsd-signature-symbol"><</span><span class=
"tsd-signature-type">Data
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">Response
</span><span class=
"tsd-signature-symbol">></span></li>
187 <ul class=
"tsd-descriptions">
188 <li class=
"tsd-description">
189 <aside class=
"tsd-sources">
191 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/cluster/fixed.ts#L35">src/pools/cluster/fixed.ts:
35</a></li>
194 <div class=
"tsd-comment tsd-typography">
196 <p>Constructs a new poolifier fixed cluster pool.
</p>
199 <h4 class=
"tsd-type-parameters-title">Type parameters
</h4>
200 <ul class=
"tsd-type-parameters">
202 <h4>Data =
<span class=
"tsd-signature-type">unknown
</span></h4>
205 <h4>Response =
<span class=
"tsd-signature-type">unknown
</span></h4>
208 <h4 class=
"tsd-parameters-title">Parameters
</h4>
209 <ul class=
"tsd-parameters">
211 <h5>numberOfWorkers:
<span class=
"tsd-signature-type">number
</span></h5>
212 <div class=
"tsd-comment tsd-typography">
213 <p>Number of workers for this pool.
</p>
217 <h5>filePath:
<span class=
"tsd-signature-type">string
</span></h5>
218 <div class=
"tsd-comment tsd-typography">
219 <p>Path to an implementation of a
<code>ClusterWorker
</code> file, which can be relative or absolute.
</p>
223 <h5>opts:
<a href=
"../interfaces/clusterpooloptions.html" class=
"tsd-signature-type" data-tsd-kind=
"Interface">ClusterPoolOptions
</a><span class=
"tsd-signature-symbol"> = ...
</span></h5>
224 <div class=
"tsd-comment tsd-typography">
225 <p>Options for this fixed cluster pool. Default:
<code>{}
</code></p>
229 <h4 class=
"tsd-returns-title">Returns
<a href=
"fixedclusterpool.html" class=
"tsd-signature-type" data-tsd-kind=
"Class">FixedClusterPool
</a><span class=
"tsd-signature-symbol"><</span><span class=
"tsd-signature-type">Data
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">Response
</span><span class=
"tsd-signature-symbol">></span></h4>
234 <section class=
"tsd-panel-group tsd-member-group ">
236 <section class=
"tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
237 <a name=
"emitter" class=
"tsd-anchor"></a>
238 <h3><span class=
"tsd-flag ts-flagReadonly">Readonly
</span> emitter
</h3>
239 <div class=
"tsd-signature tsd-kind-icon">emitter
<span class=
"tsd-signature-symbol">:
</span> <span class=
"tsd-signature-type">PoolEmitter
</span></div>
240 <aside class=
"tsd-sources">
242 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L111">src/pools/abstract-pool.ts:
111</a></li>
245 <div class=
"tsd-comment tsd-typography">
246 <dl class=
"tsd-comment-tags">
252 <section class=
"tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
253 <a name=
"filepath" class=
"tsd-anchor"></a>
254 <h3><span class=
"tsd-flag ts-flagReadonly">Readonly
</span> file
<wbr>Path
</h3>
255 <div class=
"tsd-signature tsd-kind-icon">file
<wbr>Path
<span class=
"tsd-signature-symbol">:
</span> <span class=
"tsd-signature-type">string
</span></div>
256 <aside class=
"tsd-sources">
259 <section class=
"tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-protected">
260 <a name=
"nextmessageid" class=
"tsd-anchor"></a>
261 <h3><span class=
"tsd-flag ts-flagProtected">Protected
</span> next
<wbr>Message
<wbr>Id
</h3>
262 <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>
263 <aside class=
"tsd-sources">
265 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L129">src/pools/abstract-pool.ts:
129</a></li>
268 <div class=
"tsd-comment tsd-typography">
270 <p>ID of the next message.
</p>
274 <section class=
"tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
275 <a name=
"numberofworkers" class=
"tsd-anchor"></a>
276 <h3><span class=
"tsd-flag ts-flagReadonly">Readonly
</span> number
<wbr>OfWorkers
</h3>
277 <div class=
"tsd-signature tsd-kind-icon">number
<wbr>OfWorkers
<span class=
"tsd-signature-symbol">:
</span> <span class=
"tsd-signature-type">number
</span></div>
278 <aside class=
"tsd-sources">
281 <section class=
"tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
282 <a name=
"opts" class=
"tsd-anchor"></a>
283 <h3><span class=
"tsd-flag ts-flagReadonly">Readonly
</span> opts
</h3>
284 <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>
285 <aside class=
"tsd-sources">
288 <section class=
"tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-protected">
289 <a name=
"promisemap" class=
"tsd-anchor"></a>
290 <h3><span class=
"tsd-flag ts-flagProtected">Protected
</span> promise
<wbr>Map
</h3>
291 <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"><</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"><</span><span class=
"tsd-signature-type">Worker
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">Response
</span><span class=
"tsd-signature-symbol">></span><span class=
"tsd-signature-symbol">></span><span class=
"tsd-signature-symbol"> = ...
</span></div>
292 <aside class=
"tsd-sources">
294 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L121">src/pools/abstract-pool.ts:
121</a></li>
297 <div class=
"tsd-comment tsd-typography">
299 <p>The promise map.
</p>
302 <li><code>key
</code>: This is the message ID of each submitted task.
</li>
303 <li><code>value
</code>: An object that contains the worker, the resolve function and the reject function.
</li>
305 <p>When we receive a message from the worker we get a map entry and resolve/reject the promise based on the message.
</p>
308 <section class=
"tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
309 <a name=
"tasks" class=
"tsd-anchor"></a>
310 <h3><span class=
"tsd-flag ts-flagReadonly">Readonly
</span> tasks
</h3>
311 <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"><</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><span class=
"tsd-signature-symbol"> = ...
</span></div>
312 <aside class=
"tsd-sources">
314 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L108">src/pools/abstract-pool.ts:
108</a></li>
317 <div class=
"tsd-comment tsd-typography">
318 <dl class=
"tsd-comment-tags">
324 <section class=
"tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-protected">
325 <a name=
"workerchoicestrategycontext" class=
"tsd-anchor"></a>
326 <h3><span class=
"tsd-flag ts-flagProtected">Protected
</span> worker
<wbr>Choice
<wbr>Strategy
<wbr>Context
</h3>
327 <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"><</span><span class=
"tsd-signature-type">Worker
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">Data
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">Response
</span><span class=
"tsd-signature-symbol">></span></div>
328 <aside class=
"tsd-sources">
330 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L136">src/pools/abstract-pool.ts:
136</a></li>
333 <div class=
"tsd-comment tsd-typography">
335 <p>Worker choice strategy instance implementing the worker choice algorithm.
</p>
337 <p>Default to a strategy implementing a round robin algorithm.
</p>
340 <section class=
"tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
341 <a name=
"workers" class=
"tsd-anchor"></a>
342 <h3><span class=
"tsd-flag ts-flagReadonly">Readonly
</span> workers
</h3>
343 <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>
344 <aside class=
"tsd-sources">
346 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L105">src/pools/abstract-pool.ts:
105</a></li>
349 <div class=
"tsd-comment tsd-typography">
350 <dl class=
"tsd-comment-tags">
357 <section class=
"tsd-panel-group tsd-member-group ">
359 <section class=
"tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class">
360 <a name=
"dynamic" class=
"tsd-anchor"></a>
362 <ul class=
"tsd-signatures tsd-kind-get-signature tsd-parent-kind-class">
363 <li class=
"tsd-signature tsd-kind-icon"><span class=
"tsd-signature-symbol">get
</span> dynamic
<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>
365 <ul class=
"tsd-descriptions">
366 <li class=
"tsd-description">
367 <aside class=
"tsd-sources">
369 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L211">src/pools/abstract-pool.ts:
211</a></li>
372 <div class=
"tsd-comment tsd-typography">
373 <dl class=
"tsd-comment-tags">
378 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">boolean
</span></h4>
383 <section class=
"tsd-panel-group tsd-member-group ">
385 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
386 <a name=
"afterworkersetup" class=
"tsd-anchor"></a>
387 <h3><span class=
"tsd-flag ts-flagProtected">Protected
</span> after
<wbr>Worker
<wbr>Setup
</h3>
388 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
389 <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>
391 <ul class=
"tsd-descriptions">
392 <li class=
"tsd-description">
393 <aside class=
"tsd-sources">
395 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/cluster/fixed.ts#L83">src/pools/cluster/fixed.ts:
83</a></li>
398 <h4 class=
"tsd-parameters-title">Parameters
</h4>
399 <ul class=
"tsd-parameters">
401 <h5>worker:
<span class=
"tsd-signature-type">Worker
</span></h5>
404 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">void
</span></h4>
408 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
409 <a name=
"chooseworker" class=
"tsd-anchor"></a>
410 <h3><span class=
"tsd-flag ts-flagProtected">Protected
</span> choose
<wbr>Worker
</h3>
411 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
412 <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>
414 <ul class=
"tsd-descriptions">
415 <li class=
"tsd-description">
416 <aside class=
"tsd-sources">
418 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L313">src/pools/abstract-pool.ts:
313</a></li>
421 <div class=
"tsd-comment tsd-typography">
423 <p>Choose a worker for the next task.
</p>
425 <p>The default implementation uses a round robin algorithm to distribute the load.
</p>
427 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">Worker
</span></h4>
432 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
433 <a name=
"createandsetupworker" class=
"tsd-anchor"></a>
434 <h3><span class=
"tsd-flag ts-flagProtected">Protected
</span> create
<wbr>And
<wbr>Setup
<wbr>Worker
</h3>
435 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
436 <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>
438 <ul class=
"tsd-descriptions">
439 <li class=
"tsd-description">
440 <aside class=
"tsd-sources">
442 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L366">src/pools/abstract-pool.ts:
366</a></li>
445 <div class=
"tsd-comment tsd-typography">
447 <p>Creates a new worker for this pool and sets it up completely.
</p>
450 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">Worker
</span></h4>
451 <p>New, completely set up worker.
</p>
455 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
456 <a name=
"createworker" class=
"tsd-anchor"></a>
457 <h3><span class=
"tsd-flag ts-flagProtected">Protected
</span> create
<wbr>Worker
</h3>
458 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
459 <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>
461 <ul class=
"tsd-descriptions">
462 <li class=
"tsd-description">
463 <aside class=
"tsd-sources">
465 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/cluster/fixed.ts#L79">src/pools/cluster/fixed.ts:
79</a></li>
468 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">Worker
</span></h4>
472 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
473 <a name=
"decreaseworkerstasks" class=
"tsd-anchor"></a>
474 <h3><span class=
"tsd-flag ts-flagProtected">Protected
</span> decrease
<wbr>Workers
<wbr>Tasks
</h3>
475 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
476 <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>
478 <ul class=
"tsd-descriptions">
479 <li class=
"tsd-description">
480 <aside class=
"tsd-sources">
482 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L275">src/pools/abstract-pool.ts:
275</a></li>
485 <div class=
"tsd-comment tsd-typography">
487 <p>Decrease the number of tasks that the given workers has done.
</p>
490 <h4 class=
"tsd-parameters-title">Parameters
</h4>
491 <ul class=
"tsd-parameters">
493 <h5>worker:
<span class=
"tsd-signature-type">Worker
</span></h5>
494 <div class=
"tsd-comment tsd-typography">
495 <p>Worker whose tasks are decreased.
</p>
499 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">void
</span></h4>
503 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
504 <a name=
"destroy" class=
"tsd-anchor"></a>
506 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class">
507 <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"><</span><span class=
"tsd-signature-type">void
</span><span class=
"tsd-signature-symbol">></span></li>
509 <ul class=
"tsd-descriptions">
510 <li class=
"tsd-description">
511 <aside class=
"tsd-sources">
513 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L237">src/pools/abstract-pool.ts:
237</a></li>
516 <div class=
"tsd-comment tsd-typography">
517 <dl class=
"tsd-comment-tags">
522 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">Promise
</span><span class=
"tsd-signature-symbol"><</span><span class=
"tsd-signature-type">void
</span><span class=
"tsd-signature-symbol">></span></h4>
526 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
527 <a name=
"destroyworker" class=
"tsd-anchor"></a>
528 <h3>destroy
<wbr>Worker
</h3>
529 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class">
530 <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>
532 <ul class=
"tsd-descriptions">
533 <li class=
"tsd-description">
534 <aside class=
"tsd-sources">
536 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/cluster/fixed.ts#L62">src/pools/cluster/fixed.ts:
62</a></li>
539 <div class=
"tsd-comment tsd-typography">
540 <dl class=
"tsd-comment-tags">
545 <h4 class=
"tsd-parameters-title">Parameters
</h4>
546 <ul class=
"tsd-parameters">
548 <h5>worker:
<span class=
"tsd-signature-type">Worker
</span></h5>
551 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">void
</span></h4>
555 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
556 <a name=
"execute" class=
"tsd-anchor"></a>
558 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class">
559 <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
</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"><</span><span class=
"tsd-signature-type">Response
</span><span class=
"tsd-signature-symbol">></span></li>
561 <ul class=
"tsd-descriptions">
562 <li class=
"tsd-description">
563 <aside class=
"tsd-sources">
565 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L226">src/pools/abstract-pool.ts:
226</a></li>
568 <div class=
"tsd-comment tsd-typography">
569 <dl class=
"tsd-comment-tags">
574 <h4 class=
"tsd-parameters-title">Parameters
</h4>
575 <ul class=
"tsd-parameters">
577 <h5>data:
<span class=
"tsd-signature-type">Data
</span></h5>
580 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">Promise
</span><span class=
"tsd-signature-symbol"><</span><span class=
"tsd-signature-type">Response
</span><span class=
"tsd-signature-symbol">></span></h4>
584 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
585 <a name=
"increaseworkerstask" class=
"tsd-anchor"></a>
586 <h3><span class=
"tsd-flag ts-flagProtected">Protected
</span> increase
<wbr>Workers
<wbr>Task
</h3>
587 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
588 <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>
590 <ul class=
"tsd-descriptions">
591 <li class=
"tsd-description">
592 <aside class=
"tsd-sources">
594 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L266">src/pools/abstract-pool.ts:
266</a></li>
597 <div class=
"tsd-comment tsd-typography">
599 <p>Increase the number of tasks that the given workers has done.
</p>
602 <h4 class=
"tsd-parameters-title">Parameters
</h4>
603 <ul class=
"tsd-parameters">
605 <h5>worker:
<span class=
"tsd-signature-type">Worker
</span></h5>
606 <div class=
"tsd-comment tsd-typography">
607 <p>Worker whose tasks are increased.
</p>
611 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">void
</span></h4>
615 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
616 <a name=
"internalexecute" class=
"tsd-anchor"></a>
617 <h3><span class=
"tsd-flag ts-flagProtected">Protected
</span> internal
<wbr>Execute
</h3>
618 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
619 <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"><</span><span class=
"tsd-signature-type">Response
</span><span class=
"tsd-signature-symbol">></span></li>
621 <ul class=
"tsd-descriptions">
622 <li class=
"tsd-description">
623 <aside class=
"tsd-sources">
625 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L338">src/pools/abstract-pool.ts:
338</a></li>
628 <h4 class=
"tsd-parameters-title">Parameters
</h4>
629 <ul class=
"tsd-parameters">
631 <h5>worker:
<span class=
"tsd-signature-type">Worker
</span></h5>
634 <h5>messageId:
<span class=
"tsd-signature-type">number
</span></h5>
637 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">Promise
</span><span class=
"tsd-signature-symbol"><</span><span class=
"tsd-signature-type">Response
</span><span class=
"tsd-signature-symbol">></span></h4>
641 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
642 <a name=
"ismain" class=
"tsd-anchor"></a>
643 <h3><span class=
"tsd-flag ts-flagProtected">Protected
</span> is
<wbr>Main
</h3>
644 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
645 <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>
647 <ul class=
"tsd-descriptions">
648 <li class=
"tsd-description">
649 <aside class=
"tsd-sources">
651 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/cluster/fixed.ts#L57">src/pools/cluster/fixed.ts:
57</a></li>
654 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">boolean
</span></h4>
658 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter">
659 <a name=
"registerworkermessagelistener" class=
"tsd-anchor"></a>
660 <h3>register
<wbr>Worker
<wbr>Message
<wbr>Listener
</h3>
661 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter">
662 <li class=
"tsd-signature tsd-kind-icon">register
<wbr>Worker
<wbr>Message
<wbr>Listener
<Message
><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"><</span><span class=
"tsd-signature-type">Message
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">unknown
</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><span class=
"tsd-signature-symbol">)
</span><span class=
"tsd-signature-symbol">:
</span><span class=
"tsd-signature-type">void
</span></li>
664 <ul class=
"tsd-descriptions">
665 <li class=
"tsd-description">
666 <aside class=
"tsd-sources">
668 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/cluster/fixed.ts#L72">src/pools/cluster/fixed.ts:
72</a></li>
671 <div class=
"tsd-comment tsd-typography">
672 <dl class=
"tsd-comment-tags">
677 <h4 class=
"tsd-type-parameters-title">Type parameters
</h4>
678 <ul class=
"tsd-type-parameters">
683 <h4 class=
"tsd-parameters-title">Parameters
</h4>
684 <ul class=
"tsd-parameters">
686 <h5>worker:
<span class=
"tsd-signature-type">Worker
</span></h5>
689 <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"><</span><span class=
"tsd-signature-type">Message
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">unknown
</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></h5>
690 <ul class=
"tsd-parameters">
691 <li class=
"tsd-parameter-signature">
692 <ul class=
"tsd-signatures tsd-kind-type-literal">
693 <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"><</span><span class=
"tsd-signature-type">Message
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">unknown
</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></li>
695 <ul class=
"tsd-descriptions">
696 <li class=
"tsd-description">
697 <h4 class=
"tsd-parameters-title">Parameters
</h4>
698 <ul class=
"tsd-parameters">
700 <h5>message:
<span class=
"tsd-signature-type">MessageValue
</span><span class=
"tsd-signature-symbol"><</span><span class=
"tsd-signature-type">Message
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">unknown
</span><span class=
"tsd-signature-symbol">></span></h5>
703 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">void
</span></h4>
710 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">void
</span></h4>
714 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
715 <a name=
"removeworker" class=
"tsd-anchor"></a>
716 <h3><span class=
"tsd-flag ts-flagProtected">Protected
</span> remove
<wbr>Worker
</h3>
717 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
718 <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>
720 <ul class=
"tsd-descriptions">
721 <li class=
"tsd-description">
722 <aside class=
"tsd-sources">
724 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L299">src/pools/abstract-pool.ts:
299</a></li>
727 <div class=
"tsd-comment tsd-typography">
729 <p>Removes the given worker from the pool.
</p>
732 <h4 class=
"tsd-parameters-title">Parameters
</h4>
733 <ul class=
"tsd-parameters">
735 <h5>worker:
<span class=
"tsd-signature-type">Worker
</span></h5>
736 <div class=
"tsd-comment tsd-typography">
737 <p>Worker that will be removed.
</p>
741 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">void
</span></h4>
745 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
746 <a name=
"sendtoworker" class=
"tsd-anchor"></a>
747 <h3><span class=
"tsd-flag ts-flagProtected">Protected
</span> send
<wbr>ToWorker
</h3>
748 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
749 <li class=
"tsd-signature tsd-kind-icon">send
<wbr>ToWorker
<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"><</span><span class=
"tsd-signature-type">Data
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">unknown
</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></li>
751 <ul class=
"tsd-descriptions">
752 <li class=
"tsd-description">
753 <aside class=
"tsd-sources">
755 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/cluster/fixed.ts#L67">src/pools/cluster/fixed.ts:
67</a></li>
758 <h4 class=
"tsd-parameters-title">Parameters
</h4>
759 <ul class=
"tsd-parameters">
761 <h5>worker:
<span class=
"tsd-signature-type">Worker
</span></h5>
764 <h5>message:
<span class=
"tsd-signature-type">MessageValue
</span><span class=
"tsd-signature-symbol"><</span><span class=
"tsd-signature-type">Data
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">unknown
</span><span class=
"tsd-signature-symbol">></span></h5>
767 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">void
</span></h4>
771 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
772 <a name=
"setworkerchoicestrategy" class=
"tsd-anchor"></a>
773 <h3>set
<wbr>Worker
<wbr>Choice
<wbr>Strategy
</h3>
774 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class">
775 <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">"ROUND_ROBIN
"</span><span class=
"tsd-signature-symbol"> |
</span><span class=
"tsd-signature-type">"LESS_RECENTLY_USED
"</span><span class=
"tsd-signature-symbol">)
</span><span class=
"tsd-signature-symbol">:
</span><span class=
"tsd-signature-type">void
</span></li>
777 <ul class=
"tsd-descriptions">
778 <li class=
"tsd-description">
779 <aside class=
"tsd-sources">
781 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L216">src/pools/abstract-pool.ts:
216</a></li>
784 <div class=
"tsd-comment tsd-typography">
785 <dl class=
"tsd-comment-tags">
790 <h4 class=
"tsd-parameters-title">Parameters
</h4>
791 <ul class=
"tsd-parameters">
793 <h5>workerChoiceStrategy:
<span class=
"tsd-signature-type">"ROUND_ROBIN
"</span><span class=
"tsd-signature-symbol"> |
</span><span class=
"tsd-signature-type">"LESS_RECENTLY_USED
"</span></h5>
796 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">void
</span></h4>
800 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
801 <a name=
"setuphook" class=
"tsd-anchor"></a>
802 <h3><span class=
"tsd-flag ts-flagProtected">Protected
</span> setup
<wbr>Hook
</h3>
803 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
804 <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>
806 <ul class=
"tsd-descriptions">
807 <li class=
"tsd-description">
808 <aside class=
"tsd-sources">
810 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/cluster/fixed.ts#L51">src/pools/cluster/fixed.ts:
51</a></li>
813 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">void
</span></h4>
817 <section class=
"tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
818 <a name=
"workerlistener" class=
"tsd-anchor"></a>
819 <h3><span class=
"tsd-flag ts-flagProtected">Protected
</span> worker
<wbr>Listener
</h3>
820 <ul class=
"tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
821 <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"><</span><span class=
"tsd-signature-type">Response
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">unknown
</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></li>
823 <ul class=
"tsd-descriptions">
824 <li class=
"tsd-description">
825 <aside class=
"tsd-sources">
827 <li>Defined in
<a href=
"https://github.com/jerome-benoit/poolifier/blob/5d4101b/src/pools/abstract-pool.ts#L389">src/pools/abstract-pool.ts:
389</a></li>
830 <div class=
"tsd-comment tsd-typography">
832 <p>This function is the listener registered for each worker.
</p>
835 <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"><</span><span class=
"tsd-signature-type">Response
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">unknown
</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></h4>
836 <p>The listener function to execute when a message is sent from a worker.
</p>
837 <ul class=
"tsd-parameters">
838 <li class=
"tsd-parameter-signature">
839 <ul class=
"tsd-signatures tsd-kind-type-literal">
840 <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"><</span><span class=
"tsd-signature-type">Response
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">unknown
</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></li>
842 <ul class=
"tsd-descriptions">
843 <li class=
"tsd-description">
844 <h4 class=
"tsd-parameters-title">Parameters
</h4>
845 <ul class=
"tsd-parameters">
847 <h5>message:
<span class=
"tsd-signature-type">MessageValue
</span><span class=
"tsd-signature-symbol"><</span><span class=
"tsd-signature-type">Response
</span><span class=
"tsd-signature-symbol">,
</span><span class=
"tsd-signature-type">unknown
</span><span class=
"tsd-signature-symbol">></span></h5>
850 <h4 class=
"tsd-returns-title">Returns
<span class=
"tsd-signature-type">void
</span></h4>
860 <div class=
"col-4 col-menu menu-sticky-wrap menu-highlight">
861 <nav class=
"tsd-navigation primary">
864 <a href=
"../index.html">Exports
</a>
868 <nav class=
"tsd-navigation secondary menu-sticky">
869 <ul class=
"before-current">
870 <li class=
" tsd-kind-class tsd-has-type-parameter">
871 <a href=
"abstractworker.html" class=
"tsd-kind-icon">Abstract
<wbr>Worker
</a>
873 <li class=
" tsd-kind-class tsd-has-type-parameter">
874 <a href=
"clusterworker.html" class=
"tsd-kind-icon">Cluster
<wbr>Worker
</a>
876 <li class=
" tsd-kind-class tsd-has-type-parameter">
877 <a href=
"dynamicclusterpool.html" class=
"tsd-kind-icon">Dynamic
<wbr>Cluster
<wbr>Pool
</a>
879 <li class=
" tsd-kind-class tsd-has-type-parameter">
880 <a href=
"dynamicthreadpool.html" class=
"tsd-kind-icon">Dynamic
<wbr>Thread
<wbr>Pool
</a>
884 <li class=
"current tsd-kind-class tsd-has-type-parameter">
885 <a href=
"fixedclusterpool.html" class=
"tsd-kind-icon">Fixed
<wbr>Cluster
<wbr>Pool
</a>
887 <li class=
" tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter">
888 <a href=
"fixedclusterpool.html#constructor" class=
"tsd-kind-icon">constructor
</a>
890 <li class=
" tsd-kind-property tsd-parent-kind-class">
891 <a href=
"fixedclusterpool.html#emitter" class=
"tsd-kind-icon">emitter
</a>
893 <li class=
" tsd-kind-property tsd-parent-kind-class">
894 <a href=
"fixedclusterpool.html#filepath" class=
"tsd-kind-icon">file
<wbr>Path
</a>
896 <li class=
" tsd-kind-property tsd-parent-kind-class tsd-is-protected">
897 <a href=
"fixedclusterpool.html#nextmessageid" class=
"tsd-kind-icon">next
<wbr>Message
<wbr>Id
</a>
899 <li class=
" tsd-kind-property tsd-parent-kind-class">
900 <a href=
"fixedclusterpool.html#numberofworkers" class=
"tsd-kind-icon">number
<wbr>OfWorkers
</a>
902 <li class=
" tsd-kind-property tsd-parent-kind-class">
903 <a href=
"fixedclusterpool.html#opts" class=
"tsd-kind-icon">opts
</a>
905 <li class=
" tsd-kind-property tsd-parent-kind-class tsd-is-protected">
906 <a href=
"fixedclusterpool.html#promisemap" class=
"tsd-kind-icon">promise
<wbr>Map
</a>
908 <li class=
" tsd-kind-property tsd-parent-kind-class">
909 <a href=
"fixedclusterpool.html#tasks" class=
"tsd-kind-icon">tasks
</a>
911 <li class=
" tsd-kind-property tsd-parent-kind-class tsd-is-protected">
912 <a href=
"fixedclusterpool.html#workerchoicestrategycontext" class=
"tsd-kind-icon">worker
<wbr>Choice
<wbr>Strategy
<wbr>Context
</a>
914 <li class=
" tsd-kind-property tsd-parent-kind-class">
915 <a href=
"fixedclusterpool.html#workers" class=
"tsd-kind-icon">workers
</a>
917 <li class=
" tsd-kind-get-signature tsd-parent-kind-class">
918 <a href=
"fixedclusterpool.html#dynamic" class=
"tsd-kind-icon">dynamic
</a>
920 <li class=
" tsd-kind-method tsd-parent-kind-class tsd-is-protected">
921 <a href=
"fixedclusterpool.html#afterworkersetup" class=
"tsd-kind-icon">after
<wbr>Worker
<wbr>Setup
</a>
923 <li class=
" tsd-kind-method tsd-parent-kind-class tsd-is-protected">
924 <a href=
"fixedclusterpool.html#chooseworker" class=
"tsd-kind-icon">choose
<wbr>Worker
</a>
926 <li class=
" tsd-kind-method tsd-parent-kind-class tsd-is-protected">
927 <a href=
"fixedclusterpool.html#createandsetupworker" class=
"tsd-kind-icon">create
<wbr>And
<wbr>Setup
<wbr>Worker
</a>
929 <li class=
" tsd-kind-method tsd-parent-kind-class tsd-is-protected">
930 <a href=
"fixedclusterpool.html#createworker" class=
"tsd-kind-icon">create
<wbr>Worker
</a>
932 <li class=
" tsd-kind-method tsd-parent-kind-class tsd-is-protected">
933 <a href=
"fixedclusterpool.html#decreaseworkerstasks" class=
"tsd-kind-icon">decrease
<wbr>Workers
<wbr>Tasks
</a>
935 <li class=
" tsd-kind-method tsd-parent-kind-class">
936 <a href=
"fixedclusterpool.html#destroy" class=
"tsd-kind-icon">destroy
</a>
938 <li class=
" tsd-kind-method tsd-parent-kind-class">
939 <a href=
"fixedclusterpool.html#destroyworker" class=
"tsd-kind-icon">destroy
<wbr>Worker
</a>
941 <li class=
" tsd-kind-method tsd-parent-kind-class">
942 <a href=
"fixedclusterpool.html#execute" class=
"tsd-kind-icon">execute
</a>
944 <li class=
" tsd-kind-method tsd-parent-kind-class tsd-is-protected">
945 <a href=
"fixedclusterpool.html#increaseworkerstask" class=
"tsd-kind-icon">increase
<wbr>Workers
<wbr>Task
</a>
947 <li class=
" tsd-kind-method tsd-parent-kind-class tsd-is-protected">
948 <a href=
"fixedclusterpool.html#internalexecute" class=
"tsd-kind-icon">internal
<wbr>Execute
</a>
950 <li class=
" tsd-kind-method tsd-parent-kind-class tsd-is-protected">
951 <a href=
"fixedclusterpool.html#ismain" class=
"tsd-kind-icon">is
<wbr>Main
</a>
953 <li class=
" tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter">
954 <a href=
"fixedclusterpool.html#registerworkermessagelistener" class=
"tsd-kind-icon">register
<wbr>Worker
<wbr>Message
<wbr>Listener
</a>
956 <li class=
" tsd-kind-method tsd-parent-kind-class tsd-is-protected">
957 <a href=
"fixedclusterpool.html#removeworker" class=
"tsd-kind-icon">remove
<wbr>Worker
</a>
959 <li class=
" tsd-kind-method tsd-parent-kind-class tsd-is-protected">
960 <a href=
"fixedclusterpool.html#sendtoworker" class=
"tsd-kind-icon">send
<wbr>ToWorker
</a>
962 <li class=
" tsd-kind-method tsd-parent-kind-class">
963 <a href=
"fixedclusterpool.html#setworkerchoicestrategy" class=
"tsd-kind-icon">set
<wbr>Worker
<wbr>Choice
<wbr>Strategy
</a>
965 <li class=
" tsd-kind-method tsd-parent-kind-class tsd-is-protected">
966 <a href=
"fixedclusterpool.html#setuphook" class=
"tsd-kind-icon">setup
<wbr>Hook
</a>
968 <li class=
" tsd-kind-method tsd-parent-kind-class tsd-is-protected">
969 <a href=
"fixedclusterpool.html#workerlistener" class=
"tsd-kind-icon">worker
<wbr>Listener
</a>
974 <ul class=
"after-current">
975 <li class=
" tsd-kind-class tsd-has-type-parameter">
976 <a href=
"fixedthreadpool.html" class=
"tsd-kind-icon">Fixed
<wbr>Thread
<wbr>Pool
</a>
978 <li class=
" tsd-kind-class tsd-has-type-parameter">
979 <a href=
"threadworker.html" class=
"tsd-kind-icon">Thread
<wbr>Worker
</a>
981 <li class=
" tsd-kind-interface">
982 <a href=
"../interfaces/clusterpooloptions.html" class=
"tsd-kind-icon">Cluster
<wbr>Pool
<wbr>Options
</a>
984 <li class=
" tsd-kind-interface tsd-has-type-parameter">
985 <a href=
"../interfaces/ipool.html" class=
"tsd-kind-icon">IPool
</a>
987 <li class=
" tsd-kind-interface">
988 <a href=
"../interfaces/iworker.html" class=
"tsd-kind-icon">IWorker
</a>
990 <li class=
" tsd-kind-interface tsd-has-type-parameter">
991 <a href=
"../interfaces/pooloptions.html" class=
"tsd-kind-icon">Pool
<wbr>Options
</a>
993 <li class=
" tsd-kind-interface">
994 <a href=
"../interfaces/workeroptions.html" class=
"tsd-kind-icon">Worker
<wbr>Options
</a>
996 <li class=
" tsd-kind-type-alias tsd-has-type-parameter">
997 <a href=
"../index.html#errorhandler" class=
"tsd-kind-icon">Error
<wbr>Handler
</a>
999 <li class=
" tsd-kind-type-alias tsd-has-type-parameter">
1000 <a href=
"../index.html#exithandler" class=
"tsd-kind-icon">Exit
<wbr>Handler
</a>
1002 <li class=
" tsd-kind-type-alias">
1003 <a href=
"../index.html#killbehavior" class=
"tsd-kind-icon">Kill
<wbr>Behavior
</a>
1005 <li class=
" tsd-kind-type-alias tsd-has-type-parameter">
1006 <a href=
"../index.html#onlinehandler" class=
"tsd-kind-icon">Online
<wbr>Handler
</a>
1008 <li class=
" tsd-kind-type-alias">
1009 <a href=
"../index.html#threadworkerwithmessagechannel" class=
"tsd-kind-icon">Thread
<wbr>Worker
<wbr>With
<wbr>Message
<wbr>Channel
</a>
1011 <li class=
" tsd-kind-type-alias">
1012 <a href=
"../index.html#workerchoicestrategy" class=
"tsd-kind-icon">Worker
<wbr>Choice
<wbr>Strategy
</a>
1014 <li class=
" tsd-kind-variable">
1015 <a href=
"../index.html#killbehaviors" class=
"tsd-kind-icon">Kill
<wbr>Behaviors
</a>
1017 <li class=
" tsd-kind-variable">
1018 <a href=
"../index.html#workerchoicestrategies" class=
"tsd-kind-icon">Worker
<wbr>Choice
<wbr>Strategies
</a>
1025 <footer class=
"with-border-bottom">
1026 <div class=
"container">
1028 <div class=
"tsd-legend-group">
1029 <ul class=
"tsd-legend">
1030 <li class=
"tsd-kind-property tsd-parent-kind-interface"><span class=
"tsd-kind-icon">Property
</span></li>
1031 <li class=
"tsd-kind-method tsd-parent-kind-interface"><span class=
"tsd-kind-icon">Method
</span></li>
1033 <ul class=
"tsd-legend">
1034 <li class=
"tsd-kind-property tsd-parent-kind-class"><span class=
"tsd-kind-icon">Property
</span></li>
1035 <li class=
"tsd-kind-method tsd-parent-kind-class"><span class=
"tsd-kind-icon">Method
</span></li>
1037 <ul class=
"tsd-legend">
1038 <li class=
"tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><span class=
"tsd-kind-icon">Inherited property
</span></li>
1039 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><span class=
"tsd-kind-icon">Inherited method
</span></li>
1041 <ul class=
"tsd-legend">
1042 <li class=
"tsd-kind-property tsd-parent-kind-class tsd-is-protected"><span class=
"tsd-kind-icon">Protected property
</span></li>
1043 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-is-protected"><span class=
"tsd-kind-icon">Protected method
</span></li>
1045 <ul class=
"tsd-legend">
1046 <li class=
"tsd-kind-method tsd-parent-kind-class tsd-is-private"><span class=
"tsd-kind-icon">Private method
</span></li>
1051 <div class=
"container tsd-generator">
1052 <p>Generated using
<a href=
"https://typedoc.org/" target=
"_blank">TypeDoc
</a></p>
1054 <div class=
"overlay"></div>
1055 <script src=
"../assets/js/main.js"></script>