[TIL/JS] JavaScript Web Worker(웹 워커)
·
TIL
자바스크립트는 싱글 스레드 기반! 싱글 스레드를 사용하는 자바스크립트는 주어진 시간에 한 줄의 코드만 실행할 수 있고 자바스크립트는 싱글스레드의 단점을 보완하기 위해 코드들이 비동기로 실행된다. 수행해야 할 작업들이 대기열에 추가되고 브라우저의 자바스크립트 엔진에 의해 한 번에 하나씩 실행이 된다. 또, API 비동기 실행이 너무 많이 쌓이게 되면 모든 작업의 실행 속도가 느려질 수 있다. 자바스크립트의 싱글 스레드 패턴은 블로킹이라는 성능 문제를 발생시킨다. 메인 스레드의 특정 작업이 완료되는데 매우 오랜 시간이 걸려서 다른 모든 작업들이 실행되지 않을 때 발생한다. 블로킹은 웹 프로그램의 속도를 느리게 하거나 때로는 정지된 상황을 만들고 사용자는 이런 상황들을 매우 불편하게 느낀다. 웹 워커란? 웹 ..