ワーカーの内部スコープにメッセージを送信します。
これは、ワーカーに送信するデータを単一の引数として受け取ります。このデータは任意の値、または循環参照を含む場合は構造化クローン アルゴリズムで扱う JavaScript オブジェクトが許可されます。
Worker の postMessage() メソッドは MessagePort の postMessage() メソッドに委任して、受信する MessagePort に対応するイベント ループのタスクを追加します。
Worker は DedicatedWorkerGlobalScope.postMessage(en)メソッド使用して自分を起動したスレッドに情報を送り返すことができます。
| worker | Worker。 |
|---|---|
| message | ワーカーに送るオブジェクトです。これは DedicatedWorkerGlobalScope.onmessage(en-US)ハンドラーに配信されるイベントの data フィールドに入ります。このデータは任意の値、または循環参照を含む場合は構造化クローン アルゴリズムで扱う JavaScript オブジェクトが許可されます。
message 引数が提供されていない場合は、TypeError が発生します。ワーカーに渡すデータが重要でない場合は、null または undefined を明示的に渡すことができます。 |
| transfer 省略可 | オプションで、所有権を移転する Transferable オブジェクトの配列です。 オブジェクトの所有権が移転されると、そのオブジェクトは送信元のコンテキストでは使用できなくなり、送信先のワーカーのみが使用できるようになります。 Transferable オブジェクトは ArrayBuffer、MessagePort、ImageBitmap のような移転可能なクラスのインスタンスです。null を transfer の値として受け付けることはできません。 |
なし
var myWorker = new Worker('worker.js');
first.onchange = function() {
myWorker.postMessage([first.value,second.value]);
console.log('Message posted to worker');
}
second.onchange = function() {
myWorker.postMessage([first.value,second.value]);
console.log('Message posted to worker');
}
¶省く
| 表示内容: |
| 表示内容: |