dev*_*nov 0 javascript node.js
我有一张地图,可以保存一堆支票的状态。每次检查只会修改一个键,.set如果两个并发检查同时尝试修改地图会不会有任何问题?
我已经 setInterval 在后台做一些检查并在地图中设置检查的状态。在其他语言中,如果有两件事试图同时编辑地图,我会遇到问题。不是实际代码,但我想知道以下操作是否安全。
var myMap = new Map();
var a = setInterval(someCheckA, 1000);
var b = setInterval(someCheckB, 1000);
function someCheckA() {
myMap.set('A', 'status is good');
}
function someCheckB() {
myMap.set('B', 'status is good');
}
// do stuff with myMap
Run Code Online (Sandbox Code Playgroud)
不,两个函数myMap.set“同时”执行没有问题- 那是因为它们不是同时执行的。JavaScript 是单线程的;虽然两个setIntervals 中的功能都会每秒激活一次,但它们会依次激活,而不是同时激活。因此,没有问题。
| 归档时间: |
|
| 查看次数: |
880 次 |
| 最近记录: |