首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java: ConcurrentHashMap

Java: ConcurrentHashMap
EN

Stack Overflow用户
提问于 2010-09-15 11:50:42
回答 2查看 3.4K关注 0票数 2

在Java中,用来映射整数和字符串的正确线程安全集合是什么?ConcurrentHashMap是正确的选择吗?

代码语言:javascript
复制
private volatile ConcurrentHashMap<int, bool> chm;

上面的声明有什么问题。Eclipse显示“标记"int”上存在语法错误,此标记后需要维度“

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-09-15 11:58:09

这会将Integer映射到String。在Java中,泛型必须使用引用类型(Integer、Boolean等),而不是基元(int、boolean等)。

代码语言:javascript
复制
private final ConcurrentHashMap<Integer, String> chm;

我不需要是易失性的,除非在不太可能的情况下,您将从多个线程将新地图放入字段中。映射本身将负责同步突变。

票数 10
EN

Stack Overflow用户

发布于 2010-09-15 13:53:00

请确保您了解,即使使用ConcurrentHashMap,您仍然可以获得不一致,特别是当您的代码有一个读/写/读区域时。该映射上的多个操作仍然需要作为一个“事务处理”进行同步。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3714542

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档