我试图运行我节点应用作为一个咕噜任务。 我需要但产卵这是一个子进程,让我在并行运行手表任务。
这工作:
grunt.registerTask('start', function () {
grunt.util.spawn(
{ cmd: 'node'
, args: ['app.js']
})
grunt.task.run('watch:app')
})
然而,当手表任务中检测到的变化,这将再次触发启动任务。 之前,我产卵我节点应用的另一个孩子的过程,我需要杀上一个。
我无法弄清楚如何却杀死进程。 像这样的东西不起作用:
var child
grunt.registerTask('start', function () {
if (child) child.kill()
child = grunt.util.spawn(
{ cmd: 'node'
, args: ['app.js']
})
grunt.task.run('watch:app')
})
看起来:
- 即使我的衍生进程存储在一个变量的函数上下文之外,它并没有持续下去,所以一开始任务下次运行时,孩子是
undefined
。 -
child
有没有kill
功能...