비동기 처리 - 1. 비동기와 콜백

비동기 처리 - 2.  Promise

비동기 처리 - 3. Promise Chaining | Error Handling

비동기 처리 - 4. Promise API

 


 

개요

 


 

Microtask (마이크로태스크)

의미

JS 엔진이 비동기 작업 결과를 처리하기 위해 사용하는 작업 단위

 

예시

프로미스의 .then .catch .finally 같은 콜백

 

특징
let promise = Promise.resolve();
promise.then(() => alert("프라미스 성공!"));
alert("코드 종료"); // 얼럿 창이 가장 먼저 뜹니다.
  • 마이크로태스크는 Call stack (콜 스택)이 비었을 때, 즉시 실행 됨
    • 콜 스택이 비었음 : 현재 실행 중인 코드 없음 + 콜백 함수의 프로미스 처리가 완료 됨
    • 따라서 위 코드에서 alert(’코드 종료’) 가 현재 실행 중인 코드이므로 실행하고 → .then 이하 코드 실행함
  • 마이크로태스크는 이벤트 루프에서 다음 태스크를 수행하기 전에 실행

 

마이크로태스크 Queue (큐)
  • 마이크로태스크들이 대기하고 있는 큐(queue)
  • 큐이므로 먼저 들어온 작업 실행 (FIFO)

+ Recent posts