Computer >> Máy Tính >  >> Lập trình >> Javascript

Việc sử dụng Atomics trong JavaScript là gì?

Nguyên tử

Nguyên tử là một đối tượng trong JavaScript cung cấp các hoạt động nguyên tử được thực hiện như các phương thức tĩnh. Cũng giống như các phương pháp của Toán học đối tượng, các phương thức và thuộc tính của Nguyên tử cũng tĩnh. Nguyên tử được sử dụng với SharedArrayBuffer đối tượng.

Atromic hoạt động được cài đặt trên Mô-đun nguyên tử . Không giống như các đối tượng toàn cầu khác, Nguyên tử không phải là hàm tạo . Nguyên tử không thể được sử dụng với toán tử mới hoặc có thể được gọi dưới dạng một hàm.

Hoạt động nguyên tử

Nguyên tử hoạt động không liên tục . Khi bộ nhớ được chia sẻ, nhiều luồng có thể đọc hoặc ghi một dữ liệu tồn tại trong bộ nhớ. Vì vậy, nếu bất kỳ dữ liệu nào bị thay đổi, sẽ mất dữ liệu Atomic đảm bảo rằng các giá trị dự đoán (dữ liệu) được ghi và đọc chính xác. Các hoạt động nguyên tử sẽ không bắt đầu cho đến khi và trừ khi hoạt động hiện tại kết thúc, vì vậy không có cách nào để thay đổi dữ liệu đã tồn tại.

Bây giờ, chúng ta hãy thảo luận về một trong những Tự động hóa phương pháp.

Atomics.add ()

Atomics.Add () được sử dụng để thêm một giá trị đã cho tại một vị trí nhất định trong một mảng và trả về giá trị cũ tại vị trí đó. Vì không cho phép gián đoạn, không có chức năng ghi nào khác có thể diễn ra cho đến khi giá trị đã sửa đổi được trả về.

Cú pháp

Atomics.add(typedArray, index, value)

Tham số

typedArray

Đó là một số nguyên mảng được chia sẻ mà chúng tôi sẽ sửa đổi.

Chỉ mục

Chỉ mục trong mảng mà chúng ta sẽ thêm một giá trị mới.

giá trị

Nó không là gì khác ngoài con số chúng ta sẽ thêm vào.

Giá trị trả về

Atomics.add () trả về giá trị cũ tại vị trí đã cho (typedArray [index]).

Ví dụ

<html>
<body>
<script type="text/javascript">
   // creating a SharedArrayBuffer
   var buffer = new SharedArrayBuffer(25);
   var arr = new Uint8Array(buffer);
   // Initialising element at zeroth position of array with 6
   arr[0] = 6;
   // Displaying the return value of the Atomics.add() method
   document.write(Atomics.add(arr, 0, 2));
   document.write("</br>");
   // Displaying the updated SharedArrayBuffer
   document.write(Atomics.load(arr, 0));
</script>
</body>
</html>

Đầu ra

6
8