
- Atomics Tutorial
- Atomics - Home
- Atomics - Overview
- Atomics Methods
- Atomics - add
- Atomics - and
- Atomics - compareExchange
- Atomics - exchange
- Atomics - isLockFree
- Atomics - load
- Atomics - notify
- Atomics - or
- Atomics - store
- Atomics - sub
- Atomics - xor
- Atomics Useful Resources
- Atomics - Quick Guide
- Atomics - Useful Resources
- Atomics - Discussion
Atomics - isLockFree() Method
isLockFree method is used to determine whether locks are to be used or not for atomic operations. If given size is one of TypedArray.BYTES_PER_ELEMENT property of integer TypedArray types then it returns true. TypedArray.BYTES_PER_ELEMENT represents the size in bytes of each element of an typed array.
Syntax
Atomics.isLockFree(size)
Parameters
size to be checked in bytes.
Return
Returns true if operation is lock free as false.
Example
Following is the code for implementing JavaScript Atomics −
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Atomics Example</title> <style> .result { font-size: 20px; border: 1px solid black; } </style> </head> <body onLoad="operate();"> <h1>JavaScript Atomics Properties</h1> <div class="result"></div> <p>Atomics.isLockFree(1)</p> <p>Atomics.isLockFree(3)</p> <script> function operate(){ let container = document.querySelector(".result"); // create a SharedArrayBuffer var buffer = new SharedArrayBuffer(25); var arr = new Uint8Array(buffer); // Initialise element at zeroth position of array with 6 arr[0] = 6; // Int8Array.BYTES_PER_ELEMENT = 1 container.innerHTML = Atomics.isLockFree(Int8Array.BYTES_PER_ELEMENT) + '<br/>' + Atomics.isLockFree(3); } </script> </body> </html>
Output
Verify the result.
Advertisements