JavaScript Atomics waitAsync() Method Last Updated : 28 Apr, 2025 Summarize Comments Improve Suggest changes Share Like Article Like Report Among the Atomic operations the Atomics.waitAsync() operator is used to make an operation wait asynchronously on memory and returns a promise. It is non-blocking as compared to Atomics.wait() and can be used on the main thread. If the promise is not fulfilled then it will lead to a 'time-out' status otherwise the status will always be 'ok' after the promise has been fulfilled. Syntax: Atomics.waitAsync(typedArray, ind, val, timeOut) Parameters: This operation accepts four parameters. typedArray: It is an Int32Array or BigInt64Array.ind: It is the position of the element to wait on.val: It is the expected value.timeOut: It is the time for which we have to wait. Infinity is the default value. Return Value: It returns two values where the first value is boolean and tells if the promise is created. If the first value is true then the second value is a Promise which is fulfilled and never rejected Example 1: This example shows the use of the waitAsync() method. JavaScript let example = new SharedArrayBuffer(1024); let arr = new Int32Array(example); console.log(Atomics.waitAsync(arr, 0, 0, 1000)); Output: { async: true, value: Promise { <pending> } } Example 2: This example shows the promise fulfilled state. JavaScript let example = new SharedArrayBuffer(1024); let arr = new Int32Array(example); let res = Atomics.waitAsync(arr, 0, 0, 1000) console.log(res); Atomics.notify(arr, 0) setTimeout(() => { console.log(res); }, 1000); Output: The notify() method wakes the array and the promise is fulfilled. { async: true, value: Promise { <pending> } } { async: true, value: Promise { 'ok' } } Supported Browsers: ChromeEdgeOperaSafari We have a complete list of Javascript Atomic methods, to check those please go through this JavaScript Atomics Reference article. Comment More infoAdvertise with us S shobhit_sharma Follow Improve Article Tags : JavaScript Web Technologies 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