2012-05-01 15 views

risposta

17

In breve utilizzo: process.send()

esempio più lungo, ho scritto poco fa chiamato 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); 
    }); 
    }); 
} 
+0

'if (processo . argv [2]) 'altro modo migliore per identificare il master/figlio –

+3

Penso che potrebbe essere più chiaro da usare:'! process.send' che è vero se questo processo non è figlio di un altro. –

+0

@DanD. non del tutto vero, poiché IPC non può essere creato e non ci sarà un metodo di invio. – senz

Problemi correlati