Changed console logs to debuglog, fixed msgAll locking workers

This commit is contained in:
mrfry 2021-04-21 13:14:21 +02:00
parent b1dcb3b018
commit 7571ffe271
2 changed files with 21 additions and 9 deletions

View file

@ -44,13 +44,14 @@ function handleWorkerError(worker: WorkerObj, err) {
// TODO: accuire all workers here, and handle errors so they can be removed if threads exit
export function msgAllWorker(data: any): Promise<any> {
console.log('MSGING ALL WORKER')
logger.DebugLog('MSGING ALL WORKER', 'job', 1)
return new Promise((resolve) => {
const promises = []
workers.forEach((worker) => {
promises.push(doALongTask(data, worker.index))
})
Promise.all(promises).then((res) => {
logger.DebugLog('MSGING ALL WORKER DONE', 'job', 1)
resolve(res)
})
})
@ -131,8 +132,10 @@ function processJob() {
if (!isNaN(pendingJobs[jobKey].targetWorkerIndex)) {
if (workers[pendingJobs[jobKey].targetWorkerIndex].free) {
freeWorker = workers[pendingJobs[jobKey].targetWorkerIndex]
console.log(
`RESERVING WORKER ${pendingJobs[jobKey].targetWorkerIndex}`
logger.DebugLog(
`RESERVING WORKER ${pendingJobs[jobKey].targetWorkerIndex}`,
'job',
1
)
}
} else {
@ -140,14 +143,18 @@ function processJob() {
return worker.free
})
if (freeWorker) {
console.log(`RESERVING FIRST AVAILABLE WORKER ${freeWorker.index}`)
logger.DebugLog(
`RESERVING FIRST AVAILABLE WORKER ${freeWorker.index}`,
'job',
1
)
}
}
i++
}
if (!freeWorker) {
console.log('NO FREE WORKER')
logger.DebugLog('NO FREE WORKER', 'job', 1)
return
}