2016-06-15 144 views
0

內的一個節點/ Express服務器,我開始另一個節點/ Express服務器作爲子進程:如何殺死Node Express子進程?

let appifi = child.spawn('node', [babel_path, www_path], { 
    cwd: appifi_path, 
    env: appifi_env, 
}) 

這工作得很好,並appifi得到了PID,說2376

當試圖阻止子進程,appifi.kill()將使用pid 2376終止進程,但是有一個重新生成的服務器進程正在運行,通常是pid等於它的父節點pid加5(我不知道這是否是嚴格的規則)。

我的問題是,如何在父級服務器中殺死它們? process.kill(appifi.pid + 5)是否安全?還是有更好的辦法?

+0

扼殺了(實際上,ALL)節點服務器我沒有看到第三個過程(重生服務器進程),我也不明白爲什麼應該有一個。你可以把你的完整代碼,導致這種行爲? –

回答

0

您可以通過killall -9 node