Как получить child_process.spawn для создания действительно отдельного процесса в Linux? - PullRequest
0 голосов
/ 21 апреля 2019

Я не хочу, чтобы мой дочерний процесс завершился после смерти родителя.

var logPath = `${global.appPath}/logs/detached-job-${detachedJobId}.txt`
var options = { detached: true, stdio: ['ignore', fs.openSync(logPath, 'a'), fs.openSync(logPath, 'a')], env: process.env }
var childProcess = child_process.spawn('node', [`${global.appPath}/backend/bin/run-detached-job.js`, `${detachedJobId}`], options)
childProcess.unref()
await new Promise(function (resolve, reject) {
  childProcess.on('error', reject)
  childProcess.on('close', function (code) {
    if (code !== 0) {
      return reject(new Error('Invalid exit code ' + code))
    }
    resolve(code)
  })
})

Это не работает. nodejs v10.13.0, Linux 4.4.0-143-generic

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...