0

因此,我希望节点打开数百个相同的进程,并能够接收来自每个进程的响应并对其进行处理。我之前没用过node...

我试过这个:

var Spawner = require('child_process');

for (x=0; x<100; ++x)
{
    MyApplication = Spawner.spawn('HandShake.exe'); 
}

MyApplication.stdout.on('data', function(data) {
    console.log('stdout: ' + data);
});

但是,我只得到 1 个对 stdout 的响应,因为我相信 var 每次都被覆盖。

如果可能的话,我如何从我产生的每个子进程中获得响应?

谢谢。

4

1 回答 1

3

是的,你是对的。您的变量在每次运行中都会被覆盖。结果,您只在最后一个实例上收听。在循环中添加监听器。

var Spawner = require('child_process');

for (x=0; x<100; ++x)
{
    MyApplication = Spawner.spawn('HandShake.exe'); 
    MyApplication.stdout.on('data', function(data) {
        console.log('stdout' + data);
    });
}
于 2013-07-17T10:26:01.747 回答