본문으로 바로가기
COMMUNITY모든 이야기

Node.js Event Loop에서 setImmediate와 process.nextTick 실행 순서 문제

빗방울 2026.10.30 10:21 1분 읽기 조회 9

면접 대비용으로 이벤트 루프 동작 원리 테스트 중인데, 실행 순서가 예상과 다르게 나옵니다.

코드:

const fs = require('fs');

fs.readFile(__filename, () => {
  setTimeout(() => console.log('timeout'), 0);
  setImmediate(() => console.log('immediate'));
  process.nextTick(() => console.log('nextTick'));
});

오류: nextTick

immediate

timeout

(기대값은 nextTick -> timeout -> immediate 순서임)

시도: 공식 문서 확인 및 호출 위치 변경.

질문: I/O 콜백 내부에서 setImmediate가 setTimeout(0)보다 먼저 실행되는 이유가 무엇인가요?

모든 이야기1455

가벼운 안부부터 깊은 생각까지, 함께 나눠요.

글쓰기
총 1455개의 이야기
댓글