비동기 프로그래밍1 42. 비동기 프로그래밍 42.1 동기 처리와 비동기 처리 1. 함수 실행 프로세스 함수 호출 → 함수코드 평가 → 함수 실행 컨텍스트 생성 함수 실행 컨텍스트가 콜 스택에 푸시되어 함수 코드가 실행된다. 함수 코드 실행이 종료되면 콜 스택에서 팝 되어 제거된다. 함수의 실행 순서는 이 콜 스택으로 관리하는데, 자바스크립트 엔진은 단 하나의 실행 컨텍스트 스택(콜 스택)을 갖는다. 2. 동기 처리로 인한 블로킹 현상 이처럼 자바스크립트 엔진은 한 번에 하나의 태스크만 실행할 수 있는 싱글 스레드(single thread) 방식으로 동작하기 때문에 처리에 시간이 걸리는 태스크를 실행하는 경우 블로킹(작업중단) 현상이 발생한다. 3. 비동기 처리 만약 타이머 함수인 setTimeout 을 이용하면 이후의 태스크를 블로킹하지 않고 곧.. 2023. 2. 25. 이전 1 다음