组合操作,会不会形成死循环
来源:9-16 ConcurrentHashMap复习

不努力我们就老了
2020-03-29
@Override
public void run() {
for (int i = 0; i < 1000; i++) {
while (true) {
Integer score = scores.get("小明");
Integer newScore = score + 1;
boolean b = scores.replace("小明", score, newScore);
if (b) {
break;
}
}
}
}
如果 b一直返回false,会不会形成死循环。代码的业务逻辑是不是应该放到 if (b) {} 里面写,比如将newScore 入库的逻辑。 麻烦老师了 ???
写回答
1回答
-
悟空
2020-03-29
可能会造成死循环。
10
相似问题
Future的cancel
回答 2