如何向父进程发送消息

gui*_* 桂林 16 node.js

我可以向父进程发送消息吗?

var child =child_process.fork();

child.send({msg:msg})
Run Code Online (Sandbox Code Playgroud)

儿童过程

process.on('message', function(){

});

// how to send message to parent??
Run Code Online (Sandbox Code Playgroud)

Dan*_* D. 16

简而言之: process.send()

更长的例子,我前一段时间写过forktest.js:

var cp = require('child_process');

if (!process.send) {
  var p = cp.fork(__dirname + '/forktest');
  p.send({
    count: 10
  });
  p.on('message', function(data) {
    process.exit(0);
  });
} else {
  process.on('message', function(data) {
    console.log(data);
    data.count--;
    if (data.count === 0) {
      process.send({});
      process.exit(0);
    }
    var p = cp.fork(__dirname + '/forktest');
    p.send(data);
    p.on('message', function(data) {
      process.send(data);
      process.exit(0);
    });
  });
}
Run Code Online (Sandbox Code Playgroud)

  • 我认为使用它可能更清楚:`!process.send`如果这个过程不是另一个过程的孩子,那就是真的. (3认同)