X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Fcharging-station%2FWorker.ts;h=d91942021184855f282892b4c9467a6beee9b5cc;hb=b95523058c121b22e086339675407f5266250b7b;hp=93aade5046b44284ee4604e1b17df0e3a9f5d46d;hpb=6af9012e5b9ef2ed6f4fe8a9696b40ac0e8da4d0;p=e-mobility-charging-stations-simulator.git diff --git a/src/charging-station/Worker.ts b/src/charging-station/Worker.ts index 93aade50..d9194202 100644 --- a/src/charging-station/Worker.ts +++ b/src/charging-station/Worker.ts @@ -1,38 +1,37 @@ import Configuration from '../utils/Configuration'; import Pool from 'worker-threads-pool'; import { Worker } from 'worker_threads'; +import WorkerData from '../types/WorkerData'; export default class Wrk { - private _workerData; - private _workerScript; - private _pool; + private _workerScript: string; + private _workerData: WorkerData; + private _pool: Pool; private _concurrentWorkers: number; /** * Create a new `Wrk`. * - * @param {String} workerScript - * @param {Object} workerData - * @param {Number} numConcurrentWorkers + * @param {string} workerScript + * @param {WorkerData} workerData + * @param {number} numConcurrentWorkers */ - constructor(workerScript, workerData, numConcurrentWorkers) { + constructor(workerScript: string, workerData: WorkerData, numConcurrentWorkers: number) { this._workerData = workerData; this._workerScript = workerScript; - this._numConcurrentWorkers = numConcurrentWorkers; if (Configuration.useWorkerPool()) { + this._concurrentWorkers = Configuration.getWorkerPoolSize(); this._pool = new Pool({ max: Configuration.getWorkerPoolSize() }); + } else { + this._concurrentWorkers = numConcurrentWorkers; } } /** - * @param {Number} numConcurrentWorkers - * @private + * @return {number} + * @public */ - set _numConcurrentWorkers(numConcurrentWorkers: number) { - this._concurrentWorkers = numConcurrentWorkers; - } - - get _numConcurrentWorkers(): number { + public get concurrentWorkers(): number { return this._concurrentWorkers; }