2012-05-01 9 views

答えて

17

マスター:

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); 
    }); 
    }); 
} 
+0

'場合(プロセス:process.send()

長い例、私はforktest.jsという名前しばらく前に書い。 argv [2]) 'マスター/子を特定するための他のより良い方法 –

+3

私はそれを使用する方がより明確であると思います:'!process.send'は、このプロセスが別のものの子でない場合にtrueです。 –

+0

@DanD。 IPCが作成されず、送信メソッドが存在しない可能性があるため、完全に真ではありません。 – senz

関連する問題