Commit | Line | Data |
---|---|---|
3d2ff9e4 J |
1 | import { isMainThread, parentPort, workerData } from 'worker_threads'; |
2 | import Constants from '../utils/Constants'; | |
3f40bc9c | 3 | |
6af9012e | 4 | import ChargingStation from './ChargingStation'; |
7dde0b73 JB |
5 | |
6 | if (!isMainThread) { | |
ad3de6c4 | 7 | const station = new ChargingStation(workerData.index as number, workerData.templateFile as string); |
7dde0b73 | 8 | station.start(); |
3d2ff9e4 J |
9 | |
10 | // Listener: start new charging station from main thread | |
11 | addListener(); | |
12 | } | |
13 | ||
14 | function addListener() { | |
15 | parentPort.setMaxListeners(1000); | |
16 | parentPort.on("message", e => { | |
17 | if (e.id === Constants.START_NEW_CHARGING_STATION) { | |
18 | startChargingStation(e.workerData); | |
19 | } | |
20 | }); | |
21 | } | |
22 | ||
23 | function startChargingStation(data: any) { | |
24 | const station = new ChargingStation(data.index as number, data.templateFile as string); | |
25 | station.start(); | |
7dde0b73 | 26 | } |