generated at
Web Workers







参考





web workerはマルチコアのCPUをより効率よく利用できることが多い
全てのタスクがシングルスレッドで処理されるJavaScriptの持つ問題を解消するための仕様
workerを使用することによって、一部の操作について並行処理(バックグラウンド処理)が可能となる

Main Threadとは別のWorker Threadで処理を実行するAPIの総称
main threadをブロックせずに、時間のかかる処理を実行できる
基本的には任意の処理ができる
しかし、DOMの操作はできない
WebSocketIndexedDBなどの操作はできる
複数のWorker Threadを生成できる


散らばる用語と今のmrsekutの理解
WebWorkers
webで使われるworkersの総称
Dedicated Worker
SharedWorker
ServiceWorker
の3つある
WebWorker
公式以外がDedicated Workerのことを雑に呼んでる
公式以外がWebWorkersのことを雑に呼んでる
Worker
公式以外がDedicated Workerのことを雑に呼んでる
ServiceWorker
SharedWorker
Dedicated Worker

const w = new Worker('worker.js') で作られるのはどれ?



名前が紛らわしすぎるmrsekut
3つまとめて「WebWorker」と呼んだり、
Dedicated Workerのことを「WebWorker」と呼んだり
文脈でどっちのことを言っているのか判断しないといけない
JavaScript Workerと呼ぶこともあるらしい ref


以下の3種類がある
>This standard defines two kinds of workers: dedicated workers, and shared workers. Dedicated workers, once created, are linked to their creator, but message ports can be used to communicate from a dedicated worker to multiple other browsing contexts or workers. Shared workers, on the other hand, are named, and once created any script running in the same origin can obtain a reference to that worker and communicate with it. Service Workers defines a third kind. ref
「2つあります」と言った後に、「Service Workersは3つ目の種類です」って言うの意味不明だなmrsekut
この説明に倣ってるからここでも2種類(のみ)ある感じで書かれている





関連
in WebWorkerなDOM API



参考
vimをブラウザ上で動かすやつ
読んでないのでどっちのWebWorkerのことを言っているのかわからん