동기식 처리 모델(Synchronous processing model)
keyword: 직렬적, Blocking
동기시 처리 모델은 직렬적으로 태스크(task)를 수행한다. 즉, 태스크는 순차적으로 실행되며 어떤 작업이 수행중이면 다음 작업 대기하게 된다. 서버에 데이터를 요청하고 데이터가 응답될때까지 이후 태스크들은 블로킹 된다.

비동기식 처리모델(Asynchronous processing model)
keyword: 병렬적, Non-blocking
병렬적으로 태스크를 수행한다. 태스크가 종료되지 않은 상태라 하더라도 대기하지 않고 다음 테스크를 실행한다. 서버로부터 데이터가 응답될때가지 대기하지 않고 (non-blocking) 즉시 다음 테스크를 수행한다. (ex/ dom 이벤트 핸들러, Timer 함수, Ajax 요청)
Quiz
스레드와 프로세스에 대해 설명해주세요.
논블록/블록과 비동기/동기에 대해서도 설명해주세요.
블록킹/논블록킹의 관점은 제어권이다.
블록킹은 제어권이 상대방에게 넘어간다. 블로킹은 자신의 작업을 하다가 다른 작업 주체가 하는 작업의 시작부터 끝까지 기다렸다가 다시 자신의 작업을 시작한다. 논블록킹 제어권은 자신에게 있다. 다른 주체의 작업에 관련없이 자신의 작업을 하는 것이다. 동기/비동기의 관점은 순서 혹은 결과 처리다.
동기시 처리 모델은 직렬적으로 태스크(task)를 수행한다. 즉, 태스크는 순차적으로 실행되며 어떤 작업이 수행중이면 다음 작업 대기하게 된다. 서버에 데이터를 요청하고 데이터가 응답될때까지 이후 태스크들은 블로킹 된다. 비동기 처리 모델은 병렬적으로 태스크를 수행한다. 태스크가 종료되지 않은 상태라 하더라도 대기하지 않고 다음 테스크를 실행한다. 서버로부터 데이터가 응답될때가지 대기하지 않고 (non-blocking) 즉시 다음 테스크를 수행한다. (ex/ dom 이벤트 핸들러, Timer 함수, Ajax 요청)