Comprendre process.nextTick ()

La fonction process.nextTick Node.js interagit avec la boucle d'événements d'une manière spéciale

Alors que vous essayez de comprendre leBoucle d'événements Node.js, une partie importante de celui-ci estprocess.nextTick().

Chaque fois que la boucle d'événements effectue un voyage complet, nous l'appelons une coche.

Lorsque nous passons une fonction àprocess.nextTick(), nous demandons au moteur d'appeler cette fonction à la fin de l'opération en cours, avant le démarrage de la prochaine boucle d'événement:

process.nextTick(() => {
  //do something
})

La boucle d'événements est occupée à traiter le code de fonction actuel.

Lorsque cette opération se termine, le moteur JS exécute toutes les fonctions passées ànextTickappels pendant cette opération.

C'est la façon dont nous pouvons dire au moteur JS de traiter une fonction de manière asynchrone (après la fonction actuelle), mais dès que possible, pas de la mettre en file d'attente.

AppelsetTimeout(() => {}, 0)exécutera la fonction à la fin du prochain tick, bien plus tard que lors de l'utilisationnextTick()qui donne la priorité à l'appel et l'exécute juste avant le début du prochain tick.

UtilisationnextTick()lorsque vous voulez vous assurer que dans la prochaine itération de la boucle d'événements, ce code est déjà exécuté.

Téléchargez mon gratuitManuel de Node.js


Plus de didacticiels sur les nœuds: