V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Kotiger  ›  全部回复第 1 页 / 共 1 页
回复总数  1
2022-05-20 16:52:20 +08:00
回复了 agzou 创建的主题 Java 请教一个 ConcurrentHashMap 问题
正如四楼大佬所说,contains 和 put 组合在一起就不是安全操作了
public class IdGeneratorService {
private final Map<String, AtomicLong> map = new ConcurrentHashMap<>();

public long nextId(String key) {
// 直接用这个方法
map.computeIfAbsent(key, it->new AtomicLong(0));
return map.get(key).incrementAndGet();
}
}
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3080 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 9ms · UTC 10:45 · PVG 18:45 · LAX 02:45 · JFK 05:45
Developed with CodeLauncher
♥ Do have faith in what you're doing.