我有一个产生子进程的主进程。当子进程被终止时,它将重新启动,但是再次被终止时,它将不会重新启动。
test.js
const fork = require('child_process').fork;
const path = require('path');
const test = path.resolve('test2.js');
let test_child = fork(test);
test_child.on("close", () => {
console.log("child gone");
setTimeout(() => {
test_child = fork(test);
}, 2500)
});
test2.js
setInterval(() => {
console.log("test")
}, 250);
我希望主进程(test.js)在由于某种原因而崩溃或停止的情况下继续启动(test2.js)。
最佳答案
const fork = require('child_process').fork;
const path = require('path');
const test = path.resolve('child.js');
function repeat() {
let test_child = fork(test);
test_child.on("close", () => {
console.log("child gone");
setTimeout(() => {
repeat();
}, 25)
});
}
repeat();
您可以在main.js中尝试上述代码
关于node.js - 重新启动子进程,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56531654/