Shared Array Buffers, Atomics and Futex APIs

Adds a new JavaScript type SharedArrayBuffer. SharedArrayBuffers can be sent to Workers and without neutering the sent buffer. The underlying buffer will be shared between the workers. The Atomic API provides atomic loads and stores and Read/Modify/Write accesses to SharedArrayBuffers. The Atomic.wait provides the ability for a worker to wait for another worker to signal it, without having to spin-loop.


It has a primary use case for asm.js code, but is also useful for implementing other higher-level sharing between Workers. See for some discussion of the possibilities. It also is likely to be how future WebAssembly shared memory is exposed to Web APIS.




Established standard

Status in Chromium


Enabled by default (tracking bug) in:

  • Chrome for desktop release 60
  • Chrome for Android release 60
  • Android WebView release 60

Consensus & Standardization


Last updated on 2017-10-22