当前位置: 首页 > 编程笔记 >

JavaScript中Atomics的用途是什么?

柳俊彦
2023-03-14
本文向大家介绍JavaScript中Atomics的用途是什么?,包括了JavaScript中Atomics的用途是什么?的使用技巧和注意事项,需要的朋友参考一下

原子学

原子公司 是在JavaScript的对象,其提供要被作为静态方法进行原子操作。就像Math 对象的方法一样,Atomics 的方法和属性也是静态的。原子 SharedArrayBuffer 对象一起使用。

Atromic 操作安装在原子能模块。与其他全局对象不同,Atomics 不是构造函数原子 不能与 新运算符一起使用,也不能作为函数调用。

原子操作

原子 操作不是不间断的。共享内存时,多个线程可以读取或写入内存中的现有数据。因此,如果更改了任何数据,则将丢失数据。  原子 操作请确保准确写入和读取预测值(数据)。除非当前操作完成,否则原子操作将不会开始,因此无法更改现有数据。

现在,让我们讨论一种Automics方法。

Atomics.add()

 Atomics.Add()用于在数组的给定位置添加给定值,并在该位置返回旧值。由于不允许中断,因此在返回修改后的值之前,无法进行其他写功能

语法

Atomics.add(typedArray, index, value)

参数

typedArray

这是我们要修改的共享数组整数。

指数

我们要在其中添加新值的数组中的索引。

就是我们要添加的数字。

返回值

Atomics.add()返回给定位置的旧值(typedArray [index])。 

示例

<html>
<body>
<script type="text/javascript">
   //创建一个SharedArrayBuffer-
   var buffer = new SharedArrayBuffer(25);
   var arr = new Uint8Array(buffer);
   //在数组的第零位置初始化元素
   arr[0] = 6;
   //显示Atomics.add()方法的返回值
   document.write(Atomics.add(arr, 0, 2));
   document.write("</br>");
   //显示更新的SharedArrayBuffer-
   document.write(Atomics.load(arr, 0));
</script>
</body>
</html>

输出结果

6
8


 类似资料:
  • 本文向大家介绍javascript中window.location的用途是什么?,包括了javascript中window.location的用途是什么?的使用技巧和注意事项,需要的朋友参考一下 Window.location只读属性返回一个Location对象,其中包含有关文档当前位置的信息。 Location接口表示链接到的对象的位置(URL)。属性在位置对象上可用- Location.hre

  • 本文向大家介绍JavaScript中.stack属性的用途是什么?,包括了JavaScript中.stack属性的用途是什么?的使用技巧和注意事项,需要的朋友参考一下 Error对象的stack属性提供了有关跟踪哪些函数,以什么顺序,从哪个行和文件以及使用什么参数调用的跟踪。堆栈字符串从最近的调用继续到较早的调用,并返回到原始的全局范围调用。它类似于Java中的堆栈跟踪。 示例 输出结果 这将给出

  • 本文向大家介绍JavaScript中Object.isFrozen()方法的用途是什么?,包括了JavaScript中Object.isFrozen()方法的用途是什么?的使用技巧和注意事项,需要的朋友参考一下 Object.isFrozen() Object.isFrozen()方法用于查找对象是否冻结。  如果符合以下条件,则对象被冻结 它不应是可扩展的。 它的属性应该是 不可配置的。 它不应

  • 本文向大家介绍JavaScript中Atomics.store()方法的用途是什么?,包括了JavaScript中Atomics.store()方法的用途是什么?的使用技巧和注意事项,需要的朋友参考一下 Atomics.store() Atomics.store()是一种内置方法,用于将特定值存储在数组中的特定位置。此方法接受Integer类型的数组,索引和值作为参数。 语法 参数 typedAr

  • 本文向大家介绍JavaScript中Math.clz32()方法的用途是什么?,包括了JavaScript中Math.clz32()方法的用途是什么?的使用技巧和注意事项,需要的朋友参考一下 Math.clz32() Math.clz32()函数返回的数量前导零个比特中的32位二进制的数的表示。在二进制表示中,有32个数字,仅由1和0组成。此方法仔细检查每个元素,并返回0的数量。 语法 示例1 在

  • 问题内容: 我正在尽最大的努力来解决JavaScript闭包问题。 通过返回一个内部函数,我可以访问其直接父级中定义的任何变量。 这对我有用吗?也许我还没有完全解决这个问题。我在网上看到的大多数示例都没有提供任何真实的代码,只是模糊的示例。 有人可以告诉我现实世界中使用闭包吗? 例如这个吗? 问题答案: 我用闭包来做类似的事情: 如您所见,现在有一个对象,带有一个方法()调用,该方法仅存在于闭包内