익명의 개발노트

Asynchronous Call 본문

프로그래밍/javascript

Asynchronous Call

캡틴.JS 2019. 2. 28. 14:10
반응형

비동기 호출이라고도 한다. 


동기 호출과 비동기 호출의 차이점을 먼저 보면,


예) 식당에 간다.


식당에 왔다.

메뉴판을 본다.

김밥을 주문한다.

테이블을 셋팅한다.

김밥을 먹었다.

계산한다.


위와 같은 흐름으로 진행한다 하면,


동기식은 순서대로 진행한다. 


그렇기때문에 김밥을 주문하고 김밥이 나올때까지 암것도 못한다. 


하지만 비동기식은 김밥주문하고 테이블 세팅하고 김밥나오면 먹으면 된다.


먼저 요청하고 응답받을때까지 기다리는게 아니라, 다른거 하면서 기다리는 거다.


통상 서버와의 요청시에 비동기식을 사용한다.


비동기식 사용 유형은 크게 3가지


1. 이벤트 핸들러

2. 타이머에서 콜백(애니메이션)

3. 서버에 자원요청(fetch이용)


대표적인 비동기식 함수는 setTimeout함수가 있다.


특징이 시간에 0을 넣어도 동기작업이 끝나고 실행된다.


실질적인 시간보다 4ms 정도의 차이가 있다.



호출스택과 이벤트 루프관련에서 참고자료 : https://www.zerocho.com/category/JavaScript/post/597f34bbb428530018e8e6e2

반응형

'프로그래밍 > javascript' 카테고리의 다른 글

Memoization  (0) 2019.03.14
call back 함수  (0) 2019.02.28
Arguments  (0) 2019.02.28
IIFE( Immediately Invoked Function Expression)  (0) 2019.02.27
this  (0) 2019.02.26
Comments