Atomics - Phương thức thông báo ()

notifyphương thức thông báo cho tác nhân đang chờ đánh thức. Phương thức thông báo chỉ có thể hoạt động với Int32Array được tạo bằng SharedArrayBuffer. Nó trả về 0 trong trường hợp đối tượng ArrayBuffer không được chia sẻ được sử dụng.

Cú pháp

Atomics.notify(typedArray, index, count)

Thông số

  • typedArray là một Int32Array được chia sẻ.

  • index là vị trí trong khay gõ để đánh thức.

  • count là số lượng tác nhân ngủ cần thông báo.

Trở về

Trả về số lượng nhân viên đã đánh thức.

Ngoại lệ

  • TypeError trong trường hợp mảng được truyền không phải là mảng được nhập kiểu số nguyên.

  • RangeError nếu chỉ mục được truyền ra ngoài bị ràng buộc trong mảng đã nhập.

Thí dụ

Sau đây là mã để triển khai 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.store(arr, 0, 5)</p>
      <p>Atomics.notify(arr, 0, 1)</p>
      <script>
         function operate(){
            let container = document.querySelector(".result");
            // create a SharedArrayBuffer
            var buffer = new SharedArrayBuffer(16);
            var arr = new Int32Array(buffer);
            // Initialise element at zeroth position of array with 6
            arr[0] = 6;            
            container.innerHTML = Atomics.store(arr, 0, 5) + '<br>' + Atomics.notify(arr, 0, 1);
         }
      </script>
   </body>
</html>

Đầu ra

Xác minh kết quả.