More Related Content
PDF
cronからjobschedulerにマイグレーションする方法 PDF
PDF
Web workers¶llel.js html5勉強会lt大会 PDF
Grunt front-osaka-1-lt-tanaka PPTX
PDF
PDF
chat bot framework for Java8 PDF
What's hot
PDF
PPTX
PPTX
PDF
React.jsでクライアントサイドなWebアプリ入門 PDF
jQuery Performance Tips – jQueryにおける高速化 - PDF
PDF
PDF
KEY
ライブラリにあらず! 〜Google Closure Toolsの事始め〜 PPTX
PDF
PDF
PDF
Introduction for Browser Side MVC PDF
Chef+serverspec+werckerでインフラCIする話 PDF
PDF
PDF
PDF
PDF
PDF
20140930 anything as_code Similar to Web Workers
PPTX
PPTX
PDF
WebSocket Chat App Hands On on Microsoft Azure PPTX
Node.js - JavaScript Thread Programming PDF
C#次世代非同期処理概観 - Task vs Reactive Extensions PPTX
Concurrent Programming in JavaScript PDF
Service Workers Push API Hands-on PDF
Webアプリ開発者のためのHTML5セキュリティ入門 PDF
PDF
Web Worker +α - HTML5/JavaScript and Service Worker API PDF
東京Node学園#3 Domains & Isolates PPT
PDF
PDF
PDF
PDF
Concurrent Programm in JavaScript PPTX
PPTX
KEY
非同期処理をちょっとはラクに。Promises:aほか PDF
PerlとJavaScriptとAndroidとiOSとのんのんバアとオレ Web Workers
- 1.
- 2.
JavaScriptでマルチスレッド
プログラミングをしたい
- 3.
- 4.
- 5.
- 6.
- 7.
Web Workerでできること
navigatorオブジェクト
locationオブジェクト(読み取り専用)
XMLHttpRequest関数(Ajax)
アプリケーションキャッシュ
importScriptsを使ったJSONP
その他のWeb Workersの生成
下記windowオブジェクト
バイナリデータとBase64ASCⅡを相互変換する
atob(),bota()にsetTimeout()、clearTimeout()、
setInterval()、clearInterval()、dump()
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
使い方
1. Workerコンストラクタを呼び出す
2. Web workersが送ってくるメッセー
ジを受け取るメソッド(onmessage)
を用意
3. Workerの開始(postMessage)
4. Web Worker側でもonmessageと
postMessageを用意する
- 17.
メインスクリプト
//Workerの生成
var worker =new Worker('work.js');
//Web Workerからのメッセージ受信用メソッド
worker.onmessage = function(e) {
console.log(e.data);//return Worker Started
};
// Worker スタート
worker.postMessage('Worker Started’);
- 18.
- 19.
- 20.
使い方
1. BlobBuilderとcreateObjectURLを
使ってWorker用ファイルを構築する
2. 1を使ってWorkerオブジェクトを生
成する
3. ごにょごにょする
- 21.
//worker用のスクリプト生成
var str ="onmessage = function(e) { postMessage(‘return ’ +e.data); }”;
//blobオブジェクト生成
var blob = new Blob([str], {type:"text/javascript"});
//createObjectURLをChromeでもFirefoxでも使えるように
var myUrl = window.webkitURL || window.URL;
//ファイル生成
var blobURL = myUrl.createObjectURL(blob);
var worker = new Worker(blobURL);
worker.onmessage = function(e) {
console.log(e.data); // return Worker Started
};
worker.postMessage('Worker Started');
- 22.
- 23.
- 24.
メインスクリプト
//共有ワーカーを生成
var worker =new SharedWorker("sworker.js");
worker.port.onmessage = function(e){
console.log(e.data);// ports = xx
};
//共有ワーカーにメッセージ送信
Worker.port.postMessage();
- 25.
- 26.
- 27.