これは実験段階の機能です。
この機能は複数のブラウザで開発中の状態にあります。互換性テーブルをチェックしてください。また、実験段階の機能の構文と挙動は、仕様変更に伴い各ブラウザの将来のバージョンで変更になる可能性があることに注意してください。
静的メソッドである Atomics
.load()
を利用すると、配列中の指定された位置の値を取得できます。この操作はアトミックであることが保証され、読み出しが終了するまで他の読み出しが起こることはありません。
構文
Atomics.load(typedArray, index)
引数
typedArray
- 共有された整数型の typed array。次のうちのいずれかでなければなりません:
Int8Array
,Uint8Array
,Int16Array
,Uint16Array
,Int32Array
, orUint32Array
。 index
- 読み出しを行う
typedArray
中の位置。
返り値
指定された位置の値 (typedArray[index]
)。
例外
typedArray
が許されている整数型以外の場合、TypeError
が送出されます。typedArray
が共有された typed array 以外の場合、TypeError
が送出されます。index
がtypedArray
の範囲外を指している場合、RangeError
が送出されます。
例
var sab = new SharedArrayBuffer(1024); var ta = new Uint8Array(sab); Atomics.add(ta, 0, 12); Atomics.load(ta, 0); // 12
仕様
仕様 | 状態 | コメント |
---|---|---|
ECMAScript Shared Memory and Atomics Atomics.load の定義 |
ドラフト | 初期定義 |
ブラウザ互換性
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | 未サポート [2] | 未サポート | 46 (46) [1] | 未サポート | 未サポート | 未サポート |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | 未サポート | 未サポート | 46.0 (46) [1] | 未サポート | 未サポート | 未サポート |
[1] 標準では無効となっており、利用するには about:config で javascript.options.shared_memory
を true
に設定する必要があります。
[2] 現在実装中の機能で、利用するには次のオプションをつけて起動する必要があります:--js-flags=--harmony-sharedarraybuffer --enable-blink-feature=SharedArrayBuffer