동기 vs 비동기

김현준·2024년 3월 2일

비동기 시리즈

목록 보기
1/6

동기적 수행

  • 한 번에 하나씩
  • 순서대로

자바스크립트는 한 번에 한 가지 일만 할 수 있는 싱글쓰레드 언어이기에 동기적 언어이다.

단점:
오래 걸리는 작업은 뒤에 있는 작업들이 대기해야 하는 블러킹 현상이 발생한다.
이 문제는 비동기 프로그래밍으로 해결한다.

비동기 프로그래밍

오래 걸리는 작업은 기다리지 않고 다음 작업으로 넘어간다.

이와 같이 setTimeout의 2초를 기다리지 않고 1, 3, 2 순서대로 출력되는게 대표적인 예시다
이런 비동기 프로그래밍이 가능한 이유는 자바스크립트의 동작원리를 참고하자.

웹api는 자바스크립트 엔진이 아닌 별도의 브라우저 환경에서 실행된다.

profile
기록하자

0개의 댓글