darait
Event Loop 본문
자바스크립트의 이벤트 루프는 단일 스레드에서 실행되는 비동기 작업을 처리하는 메커니즘입니다. javascript 에서 단일 스레드 이벤트 루프 동작을 간단히 설명하려고 합니다.
1) 사용자 이벤트 실행
2) 일단 call stack 에 들어감
3) 이벤트가 Promise, async/await fetch() 와 같은 작업들이면 Micro task Queue 에 들어가고, setTimeout, setInterval 과 같은 작업들은 web Api 에서 처리되어 Macro task Queue 들어갑니다.
4) Micro task Queue 가 Macro task Queue 보다 우선순위를 가짐으로 이벤트 루프는 콜스택과 tak quequ 를 감시하다가 콜스택이 비어있으면 우선순위에 맞게 콜스택에 보내 실행시킨다.
5) 사용자는 실행된 이벤트 확인 할 수 있다.
'IT > javaScript' 카테고리의 다른 글
[Font] 사이즈 조절법 (0) | 2017.04.12 |
---|---|
[Scope]scope의 이해 (0) | 2017.04.09 |
Comments