프론트엔드/JS
13. 동기와 비동기, 블로킹과 논블로킹
블로킹 이라는 말을 처음 들었을때, 대충 추상적으로 아 다른 함수가 실행중일때 다른 함수를 실행못하게 막는건가...?? 라고 막연하게 생각했었는데 이번에 동기님들의 스터디 발표와 여러 참고자료를 보고 정리를 해보려고한다. 동기(Synchronous) 와 비동기(Asynchronous) 의 차이부터 알아보자. 먼저, 동기와 비동기의 실행방법과 나눠진 이유를 알아보려면 스레드(Thread)라는 것을 알아야한다. 자바스크립트는 싱글 스레드(Single Thread) 언어라고 불린다. 스레드 - 프로세스 내에서 실행되는 흐름의 최소 단위 즉, 쉽게말해 프로세스 내에서 실제 작업을 하고있는 주체라고 생각하면 된다. 그리고, 스레드는 자신만의 프로그램 카운터와 시스템 레지스터, 스택을 가진다. 따라서, 자바스크립트..