📚 Reference
📜 Chapter
‣
Promise
‣
‣
process
‣
Event loop (이벤트 루프)
- Event loop
- 이벤트 루프
- 비동기 코드 처리
- libuv 기반
- JavaScript는 싱글 스레드 언어이지만, 비동기 처리를 위해 이벤트 루프(event loop)를 사용한다.
[동기 코드 실행]
→ [Microtask Queue 실행]
→ [Macrotask (setTimeout 등) 실행]
→ [반복]
- 즉, “현재 코드가 끝나면, 예약된 콜백을 순서대로 처리한다” 는 원리 자체는 동일하다.
- Node.js는 브라우저와 달리 libuv라는 C 라이브러리를 사용해서 이벤트 루프를 구현한다.
- 그래서 단계 구조가 더 세밀하게 나뉘어 있다.
Node.js 이벤트 루프 단계
- timers –
setTimeout
, setInterval
콜백 실행
- pending callbacks – I/O 에러 콜백