A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Atomics/notify below:

Atomics.notify() - JavaScript | MDN

Atomics.notify()

Baseline Widely available

Atomics.notify() は静的メソッドで、待ち行列で休眠状態にあるエージェントに通知します。

メモ: この操作は SharedArrayBuffer のビューである Int32Array または BigInt64Array に対してのみ動作します。 共有されていない ArrayBuffer オブジェクトでは 0 を返します。

構文
Atomics.notify(typedArray, index, count)
引数
typedArray

SharedArrayBuffer のビューである Int32Array または BigInt64Array。

index

起動する対象となる typedArray 中の位置。

count 省略可

通知する休眠状態のエージェントの数。既定値は Infinity です。

返値

覚醒したエージェントの数を返します。この typedArray が共有されていない ArrayBuffer のビューである場合は 0 を返します。

例外
TypeError

この typedArray が Int32Array または BigInt64Array のどちらでもない場合に発生します。

RangeError

index が typedArray の範囲を超えている場合に発生します。

例 notify の使用

共有された Int32Array を用意します。

const sab = new SharedArrayBuffer(1024);
const int32 = new Int32Array(sab);

指定された value が指定された index に格納されている値と一致するため、読み取りスレッドは位置 0 で休眠状態で待機しています。 書き込みスレッドが、指定された typedArray の位置 0 で Atomics.notify() を呼び出すまで、読み取りスレッドは移動しません。 覚醒した後、位置 0 の値が書き込みスレッドによって変更されていない場合、読み取りスレッドは休眠状態に戻らず、処理を続行することに注意してください。

Atomics.wait(int32, 0, 0);
console.log(int32[0]); // 123

書き手のスレッドは新しい値を格納し、待機中のスレッドに通知を行います。

console.log(int32[0]); // 0;
Atomics.store(int32, 0, 123);
Atomics.notify(int32, 0, 1);
仕様書 ブラウザーの互換性 関連情報

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4