JavaScript Atomics wait() Method Last Updated : 28 Apr, 2025 Summarize Comments Improve Suggest changes Share Like Article Like Report The Atomics.wait() in JavaScript is an in-built method that is used to verify whether a given position in an Int32Array still contains a given value and if so sleeps, awaiting a wakeup or a timeout. The Atomics.wait() operation returns a string that is either "ok", "not-equal", or "timed-out". The integer typedarray, index, and value are passed as an argument to the function and timeout is also an argument but it is optional. Syntax: Atomics.wait(typedArray, index, value, timeout) Parameters: This method accepts four parameters as mentioned above and described below: typedarray: This parameter specifies a shared integer typed array Int16Array.index: This parameter specifies the position in the array, typedArray to wait on.value: This parameter specifies the expected value to test.timeout: This parameter is an optional parameter. It is time to wait in milliseconds. Return value: The Atomics.wait() method returns the String which is either "ok", "not-equal", or "timed-out". Examples: Input: arr[0] = 5 Atomics.wait(arr, 0, 0, 1) Output: not-equal Input: arr[0] = 4 Atomics.wait(arr, 1, 0, 1) Output: time-out The below programs illustrate Atomics.wait() method in JavaScript: Example 1: This program illustrates the basic use of the Atomics.wait() method in JavaScript. javascript let buf = new SharedArrayBuffer(1024); let arr = new Int32Array(buf); arr[0] = 5; console.log(Atomics.load(arr, 0)); console.log(Atomics.and(arr, 0, 9)); console.log(Atomics.wait(arr, 0, 0, 1)); console.log(Atomics.load(arr, 0)); Output: 5 5 not-equal 1 Example 2: This program illustrates the basic use of Atomics.wait() method in JavaScript. javascript let buf = new SharedArrayBuffer(1024); let arr = new Int32Array(buf); arr[0] = 5; console.log(Atomics.load(arr, 0)); console.log(Atomics.and(arr, 0, 9)); console.log(Atomics.wait(arr, 1, 0, 1)); console.log(Atomics.load(arr, 0)); Output: 5 5 time-out 1 Exceptions: If the typedArray is not a shared Int32Array then the Atomics.wait() operation throws a TypeError.If the index is used as an argument to the Atomics.wait() operation is out of the bound in the typedArray then the Atomics.store( ) operation throws a RangeError We have a complete list of Javascript Atomics methods, to check those please go through the Javascript Atomics Complete Reference article. Supported Browser: Google ChromeMicrosoft EdgeFirefox Comment More infoAdvertise with us S SHUBHAMSINGH10 Follow Improve Article Tags : JavaScript Web Technologies JavaScript-atomics JavaScript-Methods Similar Reads JavaScript Atomics add() Method Among the Atomic Operations, there is a method Atomics.add() that is used to add a given value at a given position in an array and return the old value at that position. No other write operation can happen until the modified value is written back.Syntax: Atomics.add(typedArray, index, value) Paramet 2 min read JavaScript Atomics and( ) Method Among the Atomic Operations, there is a method Atomics.and() that is used to compute a bitwise AND operation with a given value at a given position in an array. The old value at that position is returned by Atomics.and() function. No other write operation can happen until the modified value is writt 2 min read JavaScript Atomics compareExchange( ) Method Atomics.compareExchange() Method: Among the Atomic Operations, there is an inbuilt method Atomics.compareExchange() which is used to exchange a value at a specific position of an array if the passed parameter is equal to the old value residing in the array. Atomics.compareExchange( ) operation in Ja 4 min read JavaScript Atomics exchange( ) Method Among the Atomic Operations, there is an inbuilt operation Atomics.exchange() that is used to exchange and store a new value at a specific position in an array. Atomics.exchange( ) operation in JavaScript returns the old value at that position of the array which has been exchanged with a new value. 3 min read JavaScript Atomics isLockFree() Method Atomics.isLockFree() operation returns true if the given size is one of the BYTES_PER_ELEMENT properties of integer TypedArray types else Atomics.isLockFree() operation returns false. A lock-free element can be manipulated without needing a lock and the user does not require to provide its own locki 3 min read JavaScript Atomics load() Method Among the Atomic Operations, there is an inbuilt operation Atomics.load() that is used to return a value that is residing at a given position in an array. The integer typedarray and the index of the value are passed as an argument to the function. Atomics.load() returns the value at the given positi 3 min read JavaScript Atomics notify() Method The Atomics.notify() is an in-built method in JavaScript that is used to notify some agents that are sleeping in the wait queue. The Atomics.notify() method returns a number of woken-up agents. The integer-typed array, index, and count are passed as an argument to the function. Syntax:Â Atomics.noti 2 min read JavaScript Atomics or() Method Among the Atomic Operations, there is a method Atomics.or() that is used to compute a bitwise OR operation with a given value at a given position in an array. The old value at that position is returned by Atomics.or() function. No other write operation can happen until the modified value is written 2 min read JavaScript Atomics store() Method What is Atomics? The Atomics is an object in JavaScript which provides the ability to perform atomic operations as static methods.Just like the Math object in JavaScript all the properties and methods of Atomics are also static.Atomics are used with SharedArrayBuffer(generic fixed-length binary data 3 min read JavaScript Atomics sub() Method Among the Atomic Operations, there is a method Atomics.sub() that is used to subtract a given value at a given position in the array and return the old value at that position. No other write operation can happen until the modified value is written back. Syntax:Â Atomics.sub(typedArray, index, value) 3 min read Like