프론트엔드 개발자

JavaScript (8) - 비동기 프로그래밍

2025. 12. 3. 06:52front-end/JavaScript

728x90
728x90

비동기 프로그래밍

작업이 완료될 때까지 기다리지 않고 다음 코드 실행

 

비동기 프로그래밍

setTimeout() 라는 Web API(콜백 대기 공간)에게 맡기고 '기다리지 않고' Main Thread 실행

asyncPrint 를 먼저 호출 했으나 foo 함수는 기다리지 않고 먼저 실행 된 후 3초뒤 asyncPrint 가 실행됨

 

 

프롱트강의자료 백그라운드 쓰레드

싱글쓰레드에서 (스케쥴링, 서버와 통신, 이벤트, 파일I/O, Cache API)와 같은 이벤트들은

메인쓰레드가 아닌 별도의 백그라운드 쓰레드를 활용 하고

그 후에 다시 메인쓰레드에서 작업을 진행한다.

 

JS(FE/BE) 실제 예시

  • 스케쥴링
  • 서버와 통신
  • 이벤트
  • 파일 I/O
  • Cache API

 

결론

JS는 싱글쓰레드지만 비동기 방식을 통해서 동시성을 달성 할 수 있음

 

 

출처: AI시대의 웹개발 : 비동기 프로그래밍과 데이터 통신 최적화(프롱트 특강)

728x90