repositories
/
e-mobility-charging-stations-simulator.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Make the worker start delay a tunable.
[e-mobility-charging-stations-simulator.git]
/
src
/
worker
/
WorkerStaticPool.ts
diff --git
a/src/worker/WorkerStaticPool.ts
b/src/worker/WorkerStaticPool.ts
index 6421762918cc1ce9986a277cb1e46e58a5e16ccc..c78768e01360a788f131029025433ee8590a5f9b 100644
(file)
--- a/
src/worker/WorkerStaticPool.ts
+++ b/
src/worker/WorkerStaticPool.ts
@@
-1,6
+1,5
@@
import { FixedThreadPool, PoolOptions } from 'poolifier';
import { FixedThreadPool, PoolOptions } from 'poolifier';
-import Constants from '../utils/Constants';
import Utils from '../utils/Utils';
import { Worker } from 'worker_threads';
import WorkerAbstract from './WorkerAbstract';
import Utils from '../utils/Utils';
import { Worker } from 'worker_threads';
import WorkerAbstract from './WorkerAbstract';
@@
-14,9
+13,10
@@
export default class WorkerStaticPool<T> extends WorkerAbstract {
*
* @param {string} workerScript
* @param {number} numberOfThreads
*
* @param {string} workerScript
* @param {number} numberOfThreads
+ * @param {number} startWorkerDelay
*/
*/
- constructor(workerScript: string, numberOfThreads: number) {
- super(workerScript);
+ constructor(workerScript: string, numberOfThreads: number
, startWorkerDelay?: number
) {
+ super(workerScript
, startWorkerDelay
);
this.pool = StaticPool.getInstance(numberOfThreads, this.workerScript);
}
this.pool = StaticPool.getInstance(numberOfThreads, this.workerScript);
}
@@
-54,7
+54,7
@@
export default class WorkerStaticPool<T> extends WorkerAbstract {
public async addElement(elementData: T): Promise<void> {
await this.pool.execute(elementData);
// Start worker sequentially to optimize memory at startup
public async addElement(elementData: T): Promise<void> {
await this.pool.execute(elementData);
// Start worker sequentially to optimize memory at startup
- await Utils.sleep(
Constants.START_WORKER_DELAY
);
+ await Utils.sleep(
this.workerStartDelay
);
}
}
}
}