Atomics - método notificar ()
notifyEl método notifica al agente en espera que se despierte. El método de notificación puede funcionar solo con Int32Array creado usando SharedArrayBuffer. Devuelve 0 en caso de que se utilice un objeto ArrayBuffer no compartido.
Sintaxis
Atomics.notify(typedArray, index, count)
Parámetros
typedArray es un Int32Array compartido.
index es la posición en typedarray para despertar.
count es el número de agentes durmientes a notificar.
Regreso
Devuelve el número de agentes despertados.
Excepciones
TypeError en caso de que la matriz pasada no sea una matriz de tipo entero.
RangeError si el índice pasado está fuera del límite en la matriz con tipo.
Ejemplo
A continuación se muestra el código para implementar 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>
Salida
Verifica el resultado.