• 회원가입
  • 로그인
  • 구글아이디로 로그인

[api] HTML5 - Web Worker - 백그라운드실행JS (= 웹워커)

목차
  1. Web Worker 예제 - 백그라운드 실행 JS
  2. Web Worker 정의

 

Web Worker 예제 - 백그라운드 실행 JS

 

<p>숫자 세기: <output id="result"></output></p>

<button onclick="startWorker()">Worker 시작</button> 

<button onclick="stopWorker()">Worker 중단</button>


<script>

var w;


function startWorker() {

  if(typeof(Worker) !== "undefined") { // Web Worker 지원여부 체크

    if(typeof(w) == "undefined") {

      w = new Worker("num_count.js"); // Web Worker 객체 생성

    }

    w.onmessage = function(event) { // 서버에서 메세지수신 이벤트 발생하면

      document.getElementById("result").innerHTML = event.data;

    };

  } else {

    document.getElementById("result").innerHTML = "Web Workers 지원 않는 브라우저는 개나 줘버려.";

  }

}


function stopWorker() { 

  w.terminate(); // Web Worker 제거

  w = undefined; // Web Worker 제거 후, 코드 재사용 목적

}

</script>

 

codepen


PS. /num_count.js 파일 소스

 

var i = 0;


function timedCount() {

  i = i + 1;

  postMessage(i);

  setTimeout("timedCount()",500);

}


timedCount();

 

codepen

 

Web Worker 정의

 

웹페이지 성능에 영향 안 주면서, 백그라운드에서 실행되는 JS.

 


 

IE10 이상 주요 최신 브라우저 모두 지원.

 


 


분류 제목
formatting HTML - <time> 태그 - 브라우저 인식 가능 날짜시간 지정 (= time태그 = 타임태그, IE9)
formatting HTML - <wbr> 태그 - 한 단어 내 줄바꿈 위치/지점 표시 (= wbr태그 = 더블유비알태그)
form HTML - <datalist> 태그 - 입력가능값리스트 (= datalist태그 = 데이터리스트태그)
form HTML - <keygen> 태그 - 암호화쌍키생성 (= keygen태그 = 키젠태그)
form HTML - <output> 태그 - 계산 결과값 출력 (= output태그 = 아웃풋태그)
image HTML - <canvas> 태그 - 그림그리기 (= canvas태그 = 캔버스태그)
image HTML - <svg> 태그 - 그림그리기 (= 동적그림 = svg태그 = 에스브이지태그)
image HTML - <figure> 태그 - 독립콘텐츠표시 (= figure태그 = 피겨태그)
image HTML - <figcaption> 태그 - 독립콘텐츠제목 (= figcaption태그 = 피그캡션태그) (…
media HTML - <audio> 태그 ★ - 음성파일재생 (= audio태그 = 오디오태그)
media HTML - <source> 태그 - 미디어소스 불러오기 (= source태그 = 소스태그)
media HTML - <track> 태그 - 미디어트랙정보 (= track태그 = 트랙태그)</tr>
media HTML - <video> 태그 ★ - 영상재생 (= video태그 = 비디오태그) ※ 영상파일형식별로 브…
link HTML - <nav> 태그 ★ - 네비게이션링크모음 (= nav태그 = 네브태그)
list HTML - <menuitem> 태그 - 마우스오른쪽 팝업메뉴 (= menuitem태그 = 메뉴아이템태그) …
style HTML - <header> 태그 ★ - 단락머리말 (= header태그 = 헤더태그 = 헤더요소) (HT…
style HTML - <footer> 태그 ★ - 단락꼬릿말 (= footer태그 = footer요소 = 푸터태그 =…
style HTML - <main> 태그 ★ - 문서기본내용 (= main태그 = 메인태그)
style HTML - <section> 태그 ★ - 연관된 문서단락 (= section태그 = 섹션태그, IE9)
style HTML - <article> 태그 ★ - 자족적인 독립콘텐츠 (= 아티클태그 = article태그. IE9…
6/18
목록
찾아주셔서 감사합니다. Since 2012