기술면접/javascript3 동기 비동기 동기 코드를 실행시키고 그 결과값을 받을 때까지 기다린 후 다음 코드를 실행하는 처리방식을 말한다 동기식에서 결과를 기다리는 과정을 blocking이라고 한다 직렬식이다 비동기 코드를 실행시키고 그 결과값을 언제 받을지 모르는 상태로 다음 코드를 실행시킨다 비동기식에서 결과를 기다리지 않는 것을 non-blocking이라고 한다 병렬식이다 2023. 4. 14. 콜백함수 콜백 함수(Callback Function) 콜백 함수란 다른 함수에게 인자로 전달되는 함수를 말합니다. 콜백 함수는 다른 함수의 실행이 끝난 뒤, 호출되어 실행되는 함수입니다. 이러한 콜백 함수는 일반적으로 비동기적인 처리에서 많이 사용됩니다. 2023. 4. 13. 이벤트루프 이벤트루프란? 이벤트루프는 자바스크립트의 비동기성을 가능하게 하는 핵심적인 개념입니다. 이벤트루프는 브라우저나 Node.js와 같은 런타임 환경에서 실행되며, 이벤트 발생 시 처리할 콜백 함수들을 큐(Queue)에 넣어놓고, 현재 실행중인 작업이 완료되면 큐에서 콜백 함수를 꺼내서 실행합니다. 이벤트루프 요소 Call Stack(호출 스택) 현재 실행중인 함수의 호출 스택을 추적합니다. 콜백 함수와 같은 이벤트와 함께 전달되는 메세지들을 보관합니다. 이벤트루프의 동작 호출 스택이 비어있을 때, 테스크 큐에서 가장 먼저 들어온 메세지를 꺼내 호출 스택으로 보냅니다. 호출 스택에서 실행할 함수와 해당 함수 내부에서 다른 함수를 호출하는 경우(콜백 함수), 호출된 함수는 호출 스택의 상단에 추가됩니다. 함수 .. 2023. 4. 13. 이전 1 다음