我有一个Hashmap,出于速度原因,我不想要锁定.如果我不介意陈旧的数据,那么更新它并同时访问它会导致任何问题吗?
我的访问是获取,而不是遍历它,删除是更新的一部分.
我在Java中使用一个返回ArrayList的共享库; 当我迭代它时,可能会抛出ConcurrentModificationException,我正在寻找100%(?)保证是安全的.我正在考虑下面的事情,我很欣赏任何意见.
data_list是从MT库返回的ArrayList <>.
boolean pass = true;
ArrayList<Something> local = new ArrayList<Something>(256);
for (int spin=0; spin<10; ++spin)
{
try {
local.addAll(data_list);
}
catch (java.util.ConcurrentModificationException ce) {
pass = false;
}
finally {
if (pass) break;
pass = true;
}
}
Run Code Online (Sandbox Code Playgroud)
假设变量pass是true,我应该如何操作本地?