본문 바로가기

언어/javascript

javascipt - 웹 워커(web worker)

A> 웹 워커

1. 정의

백그라운드 태스크를 만드는 기능이다.

자바의 스레드와 비슷하다.

백그라운드 태스크를 워커 태스크라고도 한다.

워커 태스크는 윈도우와 사용자 인터페이스 에선 사용 불가

 

2.특징

동일 도메인 원칙(=same domain)

자바 스크립트 파일은 웹 페이지와 동일한 웹 페이지에 저장한다.

로컬 컴퓨터의 웹 페이지에서는 작동이 안된다.

== UI 를 사용할 수 없다.

워커 객체를 생성하고 워커 태스크에 실행할 기능을 정의한다.

워커 객체는 워커 태스크를 제어한다.

 

 

B> 메소드

Worker() --워커 객체를 만드는 생성자 

            --예시) var taskWorker = new Worker('task.js');

postMessage() -- 워커 태스크에 메세지 전송,

                    -- 워커 태스크에서는 message 이벤트가발생한다.

                    -- 메인 태스크에서도 postMessage(파라미터)를 통해

                       태스크 워커에 메세지를 전송할 수 있다.

terminate() --즉각 워커 태스크의 실행을 종료한다.

onmessage --워커 태스크로부터 발생한 message 이벤트를 받는 리스너 (주로 메인 태스크쪽에서 받음)

                --예시) mainWorker.onmessage = function(e){ console.log(e.data); }

onerror --오류 발생시 받는 리스너

close() --워커 태스크 종료 

         -- 워커 태스크가 종료되면 더이상 message를 주고 받을 수 없다.

 

'언어 > javascript' 카테고리의 다른 글

jQuery2 - 필터( filter)  (0) 2021.02.16
jquery1 --기본 선택자  (0) 2021.02.15
BOM  (0) 2021.02.15
자바스크립트 - 이벤트  (0) 2021.02.09
자바 스크립트 - 객체 생성과 prototype  (0) 2021.02.08