我需要知道如何从子进程到其父进程通信。 我试过这个:
在我的主应用程序中:
var spawn = require('child_process').spawn
var cp = spawn('path/to/my/process', params)
cp.on('ready', function(){
console.log('process is ready')
})
在我的子流程应用中:
process.emit('ready')
但console.log('process is ready')
永远不会被执行
答案 0 :(得分:1)
发送消息会触发"消息"事件。所以你可以试试:
var cp = require('child_process');
var n = cp.fork('path/to/my/process', params);
n.on('message', function(msg) {
console.log('process is ready');
});
请参阅https://nodejs.org/api/child_process.html#child_process_child_send_message_sendhandle_callback
答案 1 :(得分:0)
使用process.send()方法将消息从子级发送到父级。
// Parent process
const childProcess = require('child_process');
var process = childProcess.fork('child.js');
process.on('message', function (message) {
console.log('Message from Child process : ' + message);
});
还有孩子
// child.js
process.send('HELLO from child')