Nodejs: process.nextTick:: microtask

Darcy Daeseok YU ·2023년 6월 3일
0
post-thumbnail

node 내장 함수 실행 순서


setImmediate(() => {
  console.log("immediate 1");
});

process.nextTick(() => {
  console.log("nextTick 2");
});

setTimeout(() => {
  console.log("timeout 3");
}, 0);

Promise.resolve().then(() => console.log("promise 4"));
;

process.nextTick && Promise
마이크로 태스트(microtask) 부름

마이크로태스크 큐가 별도로 존재함

process.nextTick 콜백 도는 resolve된 Promise 콜백은 다른 이벤트 루프에서 대기하는 태스크 큐 콜백함수 보다도 먼저 실행됩니다.

setImmediate보다 process.nextTick을 더 선호하기도 함.

마이크로태스크를 재귀 호출하게되면 이벤트 루프는 태스크 큐의 다른 콜백함수보다 마이크로태스크를 우선해 처리하므로 다른 콜백함수들이 실행되지 않을 수 있음.

profile
React, React-Native https://darcyu83.netlify.app/

0개의 댓글