Nodejs está diseñado para ejecutarse en un único proceso, pero puede spawn otros procesos. El módulo cluster utiliza el método fork del módulo child_process, pero está destinado a distribuir conexiones de un servidor a través de procesos y compartir el mismo puerto.
Creo que quieres exec. Ejemplo:
var exec = require('child_process').exec,
child;
var array = ["a", "b", "c", "d", "e"]; // your array of data
var n = array.length; // length
var done = 0; // jobs done
var i = n; // iterator
while(i--) { // reverse while loops are faster
(function (argument) { // A closure
child = exec('node otherFunction.js '+argument, // Spawn the process, with an item from your array as an argument.
function (error, stdout, stderr) {
if (error === null) {
done += 1;
if (done === n) {
console.log('Everything is done');
}
}
});
})(array[i]);
}
Lo anterior es, por supuesto, un código incorrecto y ni siquiera probado, pero creo que funcionaría. Todo lo que tiene que hacer es llamar a la función que desea llamar en los elementos de la matriz en otherFunction.js
, dentro de los que encontrará los argumentos en process.argv
.
Creo que necesita esto: [cluster] (http://nodejs.org/api/cluster.html) –
programación de eventos es bastante inusual para mí ahora .. Necesito ayuda con ejemplos de uso con mi tarea .. – elgato
Como Node.js no tiene subprocesos, debe pensar más en términos de conceptos de programación tradicionales de UNIX (es decir, bifurcación, desove y comunicación de procesos IPC-Inter). Hay un módulo de NPM llamado hook.io que hace que el IPC sea agradable y similar a un nodo, en lugar de definir su propio formato de carga útil, como suele ser el caso: https://github.com/hookio/hook.io – d11wtq