sindresorhus/eslint-plugin-unicorn









The issue has been solved
no-process-exit in worker_threads #328
lagden posted onGitHub
Is there a solution for these cases?
'use strict'
const {workerData, parentPort} = require('worker_threads')
const debug = require('./debug')
const sleep = require('./sleep')
const {data, seq} = workerData
sleep(3)
.then(() => {
// some data processing...
const res = `modified ${data}`
parentPort.postMessage(`Data processed - ${seq}: ${res}`)
})
.catch(error => {
debug.error(error)
process.exit(1)
})
My worker is waiting for an exit event.
'use strict'
const {Worker} = require('worker_threads')
function runService(service, workerData) {
return new Promise((resolve, reject) => {
const worker = new Worker(service, {workerData})
worker.on('message', resolve)
worker.on('error', reject)
worker.on('exit', code => {
if (code !== 0) {
reject(new Error(`Worker stopped with exit code ${code}`))
}
})
})
}
module.exports = runService