조회 : 5
Macrotask => 일반 비동기 작업을 이야기
Microtask => 즉시 실행할 작은 비동기 작업을 이야기
Macrotask === Task
그런데 Microtask 가 나와서 이름 헷갈린다고 Macrotask 라고 부르자고 함.
각각 큐가 있어
MacrotaskQueue는 Call Stack이 비어있고 MicrotaskQueue 가 비어있어야 실행된다.
MicrotaskQueue 는 현재 실행중인 Call Stack 이 끝나면 실행된다.(함수 안의 동작이 끝나면)
MicrotaskQueue 는 실행시 빌때 까지 실행 된다.
우선 순위 비교
Call Stack > MicrotaskQueue > MacrotaskQueue
Call Stack : 함수안에서 동작 할 것들
Macrotask : setTimeout, setInterval
Microtask : Promise.then, queueMicrotask