반응형
동기와 비동기
1. 동기
Synchronous: 동시에 발생하는
-직렬적으로 발생하는 작동방식
-요청을 보냈다면, 응답을 받아야 다음 동작이 이루어진다.
-순차적으로 실행되므로, 어떤 작업이 수행 중이라면 뒤 작업은 대기해야 한다.
-블로킹(작업중단)이 발생한다.
2. 비동기
Asynchronous: 동시에 발생하지 않는
-코드가 끝날 때까지 기다리는 것이 아니라 다음 코드를 먼저 실행한다.
-작업 완료 순서가 보장되지 않는다.
-블로킹이 발생하지 않는다.
동기는 줄 서서 앞사람이 끝나면 다음사람이 주문을 하는 것이라고 보면
비동기는 먼저 완성된 것부터 받아가는 것이라고 보면 될 것 같다.
비동기 작업 예시
console.log("hi");
setTimeout(()=>{
console.log("james");
},2);
console.log("world");
let i=0;
while(i < 1e9) i++;
console.log("finished");
출력결과
hi
world
finsihed
james
반응형
'알쓸정보모음' 카테고리의 다른 글
[javascript] 호이스팅(hoisting)에 대해서 (0) | 2024.03.26 |
---|---|
[javascript] 클로저에 대해서! (0) | 2024.01.12 |
패스트캠퍼스 - 고성능 대규모 프론트엔드 10개 프로젝트 (3) | 2023.12.01 |
프론트엔드, 네카라쿠배가 목표? 어떤 개발자가 되고싶은가 (0) | 2023.07.03 |
[Book Review] 개발자 원칙.txt (0) | 2023.03.12 |