오늘도 나는
article thumbnail
Published 2021. 7. 1. 23:27
[web] EventLoop Task Queue WEB

이번에는 Task Queue에 대해 알아보자.

 

Task Queue는 Call Stack과 마찬가지로 자료구조중 하나이며 Call Stack과 반대로 FIFO(First In First Out)구조를 갖는다.

즉 제일 먼저 들어오는 아이가 제일 먼저 나가게된다.

 

 

위 그림을 보면 DOM API, setInterval, setTimeout 등 이런 Web APIs들을 통해서 이벤트를 호출할 때 콜백을 등록하게되는데 그 등록된 콜백이 Task Queue 안에 들어오게된다.

 

 

Task Queue에 들어온 콜백은 이벤트 루프가 계속 돌다가 Call Stack에 공간이 다 비워지고 자바스크립트 엔진이 일을 하지않는 그 때 Task Queue안에 있는 콜백을 한번에 하나씩 Call Stack으로 가져오게된다.

 

다만 Call Stack으로 가져온 콜백 이벤트가 다 실행이되고 Call Stack안이 비어야 Task Queue안에 있는 또 다른 콜백을 가져올 수 있다.

 

 

'WEB' 카테고리의 다른 글

[web] Event Loop Call Stack  (0) 2021.06.30
[web] SSR(Server Side Rendering) vs CSR(Client Side Rendering)  (0) 2021.04.12
profile

오늘도 나는

@찬찬누

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

검색 태그