Я пытаюсь создать несколько дочерних вилок (используя отдельный рабочий файл js) и заставить их общаться с моим основным файлом js.
Я пробовал следующее:
for (var i = 1; i <= 2; i++) {
worker = childProcess.fork(path.join(__dirname, workerPath));
workers.push(worker);
worker.send("variable");
worker.on('message', function(message) {
worker.send("variable");
});
}
Это прекрасно работает с одним работником, однако, когда я использую двух работников, слушатель сообщения перезаписывается при создании второго работника.Это приводит к остановке первого работника и продолжению работы только второго работника.Например, если я использую следующее, то рабочие работают нормально:
worker1 = childProcess.fork(path.join(__dirname, workerPath));
worker1.send("variable");
worker1.on('message', function(message) {
worker1.send("variable");
});
worker2 = childProcess.fork(path.join(__dirname, workerPath));
worker2.send("variable");
worker2.on('message', function(message) {
worker2.send("variable");
});
Какие-нибудь решения для этого?