windows - Node.JS - Fork blokkerer parent loop execution

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg forsøger at 'multi-thread' ved hjælp af gaffel og starter en ny proces. Problemet er, når programmet er udført, og den første gaffel udfører hele forælderkoden er blokeret af den udførende gaffel.


Jeg troede, at gaffel bare returnerer et procesobjekt?


Her er en fjernet version af koden, jeg bruger:


// I am looping a multi-dimensional array and sending an object to the fork IPC.
let array = ["a0", "a1", "a2"];

// Blocking Code
arr.forEach((arrayItem) => { 
    const forked = fork('./child.js');

    // IPC code to send object...

    // Capture IPC child messages
    forked.on('message', (msg) => {
        // Handle message...
    });
});


Det er værd at tilføje, hvad jeg vil ske for kariti!


Brug forEd jeg kan derved skabe flere børneprocesser, som alle kommunikerer over IPC uden overordnet eksekveringsblok.

Bedste reference