Web Worker API

Suyeon·2020년 11월 11일
0

Interview prep

목록 보기
16/22

Javascript는 single thread언어이지만, multi tasking을 할 수 있도록 도와주는 것이 바로 web worker이다.

HTML 페이지에서 스크립트를 실행할때 그 페이지는 스크립트가 완료할때 까지 응답하지 않게 됩니다. 이를 해결하기 위해 Web worker를 사용하는데요, Web worker는 페이지의 퍼포먼스에 영향을 주지 않고 다른 스크립트와는 독립적으로 백그라운드에서 실행되는 javascript입니다.

Web worker가 생성될 때 마다 자바스크립트를 실행할 수 있는 고유의 thread를 생성해서 퍼포먼스를 향상 시킬 수 있습니다. 워커에서 사용되는 코드는 다른 코드에 영향을 주지 않는 독립적인 thread이다.

var w;
 
function startWorker() {
if(window.Worker){
        w = new Worker("example_workers.js");
        w.onmessage = function(event) {
            alert(event.data);
        };
}
else{
    alert('Web worker를 지원하지 않는 브라우저 입니다!');
}
}

// Terminate web worker
function stopWorker() {
    w.terminate();
    w = undefined;
}
profile
Hello World.

0개의 댓글