[운영체제] Node.js의 스레드

daun·2022년 8월 18일
1

[기술 면접 준비]

목록 보기
41/48

질문 : Node.js는 싱글 스레드인가요?(Section4 Unit4 Chapter2-3. 싱글 스레드와 멀티 스레드 : 세션 중 설명한 내용)

  • Node.js는 싱글 스레드인가요?

    싱글 스레드란 한번에 하나의 태스크를 실행할 수 있는 방식입니다. 대조적으로, 멀티 스레드란 한번에 다수의 태스크를 실행할 수 있는 방식입니다. 대표적으로 자바스크립트 엔진이 싱글스레드 방식으로 작동하는데, 대기 중인 태스크들은 현재 실행중인 함수가 종료되어야 작동합니다.

    Node.js 자체는 싱글스레드 방식이 아닙니다. 싱글 스레드 방식으로 동작하는 것은 Node.js나 브라우저가 아니라 브라우저에 내장된 자바스크립트 엔진입니다. 만약 모든 자바스크립트 코드가 자바스크립트 엔진에서 싱글 스레드 방식으로만 동작한다면 자바스크립트는 비동기로 동작할 수 없을 것입니다. 즉, 자바스크립트 엔진은 싱글 스레드로 동작하지만 브라우저나 Node.js는 멀티 스레드로 동작하는 것입니다. 자바스크립트를 실행하는 부분에서만 싱글스레드로 구성되어있고, 이 때의 작업 동시성은 이벤트 루프를 통해서 구현할 수 있습니다.

profile
Hello world!

0개의 댓글