Node.js 如何将映射从子进程发送到父进程

Node.js 如何将映射从子进程发送到父进程,node.js,process,child-process,Node.js,Process,Child Process,我用worker模块派生子进程。我想在子进程完成一些工作后将映射结果返回给父进程,但它不起作用。地图的大小相当大,我不确定这是否是原因。如何从子进程向父进程发送映射 function doWork() { var child = cp.fork(__dirname + '/work'); child.on('message', function(m) { console.log('completed: ' + m.results); }); child

我用
worker
模块派生子进程。我想在子进程完成一些工作后将映射结果返回给父进程,但它不起作用。地图的大小相当大,我不确定这是否是原因。如何从子进程向父进程发送映射

function doWork() {
    var child = cp.fork(__dirname + '/work');
    child.on('message', function(m) {
      console.log('completed: ' + m.results);
    });
    child.send({
      msg: 'do work',
      name: self.myname
    });
}
worker.js

var results = {};
process.on ("message", function (m){
  // work populates results map
  work(m.name);
  process.send({
    msg : 'DONE',
    // somehow this doesn't work
    results: JSON.stringify(results)
  });
});
如果我删除
result
,它就会工作。我可以在父进程中获取msg

var results = {};
    process.on ("message", function (m){
      // work populates results map
      work(m.name);
      process.send({
        msg : 'DONE',
      });
    });

它有多大?你说它不起作用是什么意思?是否有错误被抛出?闲置时卡住?还是被CPU 100%卡住了?或者有一处不见了的房子?很大。。这张地图大约有1百万行console.log('completed:'+m.results);`这个永远不会被打印出来。。