Event Loop
La boucle d'événements extrait continûment des événements de la file et les distribue à des callbacks, réalisant une concurrence d'E/S non bloquante sur un seul thread.
Objectif
Comprendre le modèle de concurrence de JavaScript/Node.js et éviter de bloquer le thread principal.
Mécanisme
Boucle : 1) prendre un événement dans la file ; 2) exécuter son callback jusqu'au bout ; 3) une fois la file de microtâches vidée, prendre l'événement suivant. Node.js utilise libuv ; les navigateurs ajoutent des phases de rendu. Les E/S asynchrones sont déléguées au système pour ne pas bloquer la boucle.
Cas d’usage
- Modèle de concurrence
- Optimisation des performances
- E/S asynchrones