Junior — Middle
Kun je het principe van de Event Loop in Node.js uitleggen en de rol ervan bij asynchrone taakverwerking?
sobes.tech AI
Antwoord van AI
De Event Loop in Node.js is een mechanisme dat het mogelijk maakt om asynchrone code uit te voeren zonder de hoofdthread te blokkeren. Node.js werkt op één thread, maar dankzij de Event Loop kan het meerdere invoer- en uitvoerbewerkingen parallel verwerken.
Werking:
- Wanneer een asynchrone operatie wordt gestart (bijvoorbeeld het lezen van een bestand of een verzoek naar een database), wordt deze naar de juiste systeem-API of wachtrij gestuurd.
- De Event Loop bewaakt deze operaties en plaatst de callbacks in de taakwachtrij wanneer ze voltooid zijn.
- De hoofdthread verwerkt deze callbacks achtereenvolgend door ze aan te roepen.
Op deze manier zorgt de Event Loop voor niet-blokkerende taakverwerking, waardoor Node.js efficiënt kan werken met veel gelijktijdige operaties.
Voorbeeld:
console.log('Start');
setTimeout(() => {
console.log('Timeout callback');
}, 0);
console.log('End');
// Output:
// Start
// End
// Timeout callback