ChromeWorker

このロケールの翻訳が存在しないため、英語バージョンのコンテンツを表示しています。 Help us translate this article!

非標準
この機能は標準的ではなく、標準化もされていません。 Web に公開している本番サイトでは使用しないでください。すべてのユーザに対して機能するわけではありません。実装間には大きな非互換性があり、その振る舞いは将来変更されるかもしれません。

要約

特権コードを開発していて、ネイティブコードへの呼び出しを実行するために js-ctypes を使用できる worker を作成したい場合は、標準の Worker オブジェクトの代わりに ChromeWorker を使用してください。worker のグローバルスコープで利用可能なグローバル ctypes オブジェクトを介して js-ctypes にアクセスできることを除けば、標準の Worker とまったく同じように機能します。ChromeWorker による js-ctypes の使用例は Github で入手でき、下記の関連項目セクションからリンクされています。Promise を特徴とするコールバックバージョンの ChromeWorker で postMessage を使用するには、PromiseWorker を参照してください。

アドオンは worker をロードするために絶対 URL を使用しなければならず、それらの URL は chrome:// または resource:// プロトコル (file:// は受け入れられません) を使用する必要があります。 file:// URL を使用したいアドオンは、まず次のようなコードを使用してリソース置換パスを登録する必要があります。

var fileuri = Services.io.newFileURI(file);
Services.io.getProtocolHandler('resource').
              QueryInterface(Ci.nsIResProtocolHandler).
              setSubstitution('my-cool-addon', fileuri);
  var worker = new Worker('resource://my-cool-addon/worker.js');

More references:

あわせて参照