|
|---|
HTML 4時代のJavaScriptは主にWebページの装飾に使われていたので、マシンやブラウザーへの負担はそれほど高くなく、JavaScriptの処理にユーザーが待たされることはほとんどありませんでした。ところが「Webアプリケーションのプラットフォーム」と位置付けられるHTML5時代になると、JavaScriptのプログラムは巨大で複雑になります。そのため、各ブラウザーベンダーはJavaScriptエンジンを高速化し、複雑で時間のかかる処理を素早くこなせるように努力してきました。
しかし、いくら高速化しても回避できないこともあります。従来のJavaScriptはJavaのようなスレッド処理ができないので、時間のかかる処理を実行するとブラウザーが停止状態になってしまい、その間、ユーザーはUI操作がまったくできなくなる問題がありました。
そこで、ブラウザーで複数の処理を並行して実行させるための機能(オブジェクト)として「Web Workers」が登場しました。Web Workersは現在、HTML5の関連APIとしてW3Cで標準化が進められています。今回のJavaScriptラボは、このWeb Workersの基本的な使い方を解説し、最終的にはJavaScriptで画像解析処理を実行するサンプルを作成します。
なお、今回はサンプルごとに動作するブラウザーが異なります。すべてのサンプルが動作するブラウザーはFirefox 4.0βのみで、Safari 5/Chrome 6/Opera 10.6では一部のサンプルのみ動作します(File APIと組み合わせたサンプルは動作しない)。Internet Explorer(IE)は、最新のIE9ベータ版でもWeb Workersをサポートしていないので動作しません。
ソーシャルリアクション
この連載の記事
- 第87回 ブラウザーにファイルを残せるFile system APIの使い方
- 第86回 Android 4の新機能でカメラWebアプリ作ってみた
- 第85回 Googleとの比較で学ぶYahoo!マップAPIの使い方
- 第84回 Googleマップ有料化でYahoo! APIを使ってみた
- 第83回 Navigation Timing APIでサイトパフォーマンスを調査
- 第82回 iOS 5で使えるWeb Workersでカメラアプリ作ってみた
- 第81回 iBooks AuthorでHTML5の電子書籍作ってみた
- 第80回 iOS 5の新機能で作る「パノラマビュー」アプリ
- 第79回 CanvasとPhoneGapで作るiPhone用落書きアプリ
- 第78回 PhoneGapでiPhoneのコンパスアプリを再現
- この連載の一覧へ























