-
- /**
- * Checks if the given worker is registered in the workers tasks usage map.
- *
- * @param worker Worker to check.
- * @returns `true` if the worker is registered in the workers tasks usage map. `false` otherwise.
- */
- private checkWorkerTasksUsage (worker: Worker): boolean {
- const hasTasksUsage = this.workersTasksUsage.has(worker)
- if (!hasTasksUsage) {
- throw new Error('Worker could not be found in workers tasks usage map')
- }
- return hasTasksUsage
- }
-
- /**
- * Initializes tasks usage statistics.
- *
- * @param worker The worker.
- */
- private initWorkerTasksUsage (worker: Worker): void {
- this.workersTasksUsage.set(worker, {
- run: 0,
- running: 0,
- runTime: 0,
- avgRunTime: 0
- })
- }
-
- /**
- * Removes worker tasks usage statistics.
- *
- * @param worker The worker.
- */
- private removeWorkerTasksUsage (worker: Worker): void {
- this.workersTasksUsage.delete(worker)
- }
-
- /**
- * Resets worker tasks usage statistics.
- *
- * @param worker The worker.
- */
- private resetWorkerTasksUsage (worker: Worker): void {
- this.removeWorkerTasksUsage(worker)
- this.initWorkerTasksUsage(worker)
- }