자바스크립트 - 매크로태스크(Macrotask) 와 마이크로태스크(Microtask) 그리고 작업 스케줄링

이전에 실행 컨택스트에 대한 내용을 포스팅 한 적이 있다. 복습겸 짧게 요약하면, 실행 컨택스트는 현재 실행중인 코드의 환경 정보를 가진 데이터 구조이고, 함수가 호출될 때 만들어져서 호출스택에 push 된다. 함수가 끝나면 (return 되면) 호출스택에서 pop 되고 메모리에서 제거된다. 실행 컨택스트 관리는 자바스크립트 엔진이 수행하는 가장 중요하면서도 기본적인 역할이고, 이 개념만 제대로 이해해도 대단한 일이다. 하지만 이것만 가지고는 브라우저의 작동 매커니즘을 모두 이해했다고 할 수 없다. 실제 브라우저에서는 DOM 이벤트, 네트워크 요청, 렌더링, 비동기 처리 등 수 많은 일들이 동시 다발적으로 발생한다. 무거운 작업을 수행할때도 브라우저가 버벅이거나 먹통이 되지 않도록 앱을 잘 설계하기 위해..

kwangsunny.tistory.com