Promist
-
동기와 비동기, 자바스크립트에서 비동기 처리가 가능한 이유, 비동기 프로그래밍CS지식 2023. 11. 11. 15:53
동기와 비동기 - 동기 처리: 반드시 코드가 작성된 순서대로 진행된다. 장점: 실행 순서 보장 단점: 블로킹 발생, 하나의 작업이 너무 오래 걸리게 되면 오래 걸리는 하나의 작업때문에 모든 작업이 올스탑되어 처리속도가 매우 느려져 성능 상에 문제가 발생하게 된다. - 비동기 처리: 현재 실행중인 코드가 완료되지 않더라도 기다리지 않고 다음 코드를 실행하는 방식이다. 실행중인 태스크가 종료되지 않은 상태라 해도 다음 태스크를 곧바로 실행한다. 이벤트 핸들러, setTimeout, setInteraval, HTTP 요청은 비동기 처리 방식으로 동작한다. 장점: 블로킹 발생 X 단점: 실행 순서 보장 X 그런데 싱글스레드인 자바스크립트에서 어떻게 비동기 처리가 가능할까? 자바스크립트 엔진은 싱글스레드라서 실행..