web-dev-qa-db-ja.com

ノードプロセスが強制終了されたときにすべてのchild_processを強制終了します

親プロセスが強制終了されたときに、すべてのchild_processが強制終了されたことを確認するにはどうすればよいですか?以下のようなものがあります。

ノードプロセスが強制終了されている場合でも、FFMPEGが引き続き実行され、out.aviが生成されていることがわかります。ノードプロセスの終了後にFFMPEGの実行を停止するにはどうすればよいですか?.

var args = "ffmpeg -i in.avi out.avi"
child_process.exec(args , function(err, stdout,stderr){});

child_process.exec(args , function(err, stdout,stderr){});
22
Phani

プロセスの終了イベントをリッスンして、子プロセスを強制終了する必要があります。これはあなたのために働くはずです:

var args = "ffmpeg -i in.avi out.avi"
var a = child_process.exec(args , function(err, stdout,stderr){});

var b = child_process.exec(args , function(err, stdout,stderr){});

process.on('exit', function () {
    a.kill();
    b.kill();
});
28
fakewaffle