Diary

[개발일기] js의 이벤트루프

브라더 코드 2023. 7. 18. 16:59

(2023.06.23) js의 중요한 개념인 이벤트 루프.

js는 한번에 한가지 일을 처리할 수 있는 '싱글 스레드' 언어이다.

하지만 동작하는 걸 보면 동시에 여러 일을 처리하는 것처럼 보인다.

이유는 바로 js가 동작하는 환경 때문이다.

js는 브라우저와 node.js라는 환경에서 동작하는데 여기에 있는 '이벤트 루프'라는 기능이 있어서다.

이벤트 루프는 콜스택과 이벤트큐라는 저장소를 계속 확인하면서,

콜스택이 비어 있고 이벤트큐에 대기중인 함수가 있으면 콜스택으로 보낸다.

그리고 콜스택의 함수는 실행된다. 즉, 이벤트 루프는 js가 여러가지 일을 할 수 있게 한다.

좀 더 자세한 내용은 다음에 정리해야겠다.