使用 ConcurrentHashMap 可以消除数据可见性问题吗?
我已经通读了 Java 并发实践,并留下了这个问题:当我使用 ConcurrentHashMap 时,什么数据本书第一部分中讨论的并发问题我还需要担心吗?以下是我的…
为什么 Java 不附带 CopyOnWriteMap?
JDK 附带了 Set 和 List 的 CopyOnWrite* 实现,但没有 Map 的实现,我经常感叹这个事实。我知道还有其他集合实现也有它们,但如果有一个作为标准提供…
ConcurrentHashMap 的示例
我正在阅读文章“Java理论与实践:构建更好的HashMap” 很好地概述了 ConcurrentHashMap 的实现。 我还在 Stackoverflow 此处找到了一些关于它的讨论…
在没有竞争的情况下在 ConcurrentMultimap 上实现删除
我一直在研究编写并发 Multimap,并且我有一个由 Google Guava< /a> AbstractSetMultimap 和 MapMaker 计算映射,根据需要创建值集合作为 Concurr…
在使用 ConcurrentMap 的 putIfAbsent 之前是否应该检查映射是否包含Key
我一直在使用 Java 的 ConcurrentMap 作为可以从多个线程使用的映射。 putIfAbsent 是一个很棒的方法,并且比使用标准映射操作更容易读/写。我有一些…
Java ConcurrentHashMap 不是线程安全的..什么?
我以前使用过 HashMap, public Map<SocketChannel, UserProfile> clients = new HashMap<SocketChannel, UserProfile>() 现在我已经切换到 C…
对 java ConcurrentHashMap 中的值进行排序
我有以下用于对 ConcurrentHashMap 进行排序的代码: ConcurrentHashMap<String,String> text = new ConcurrentHashMap<String,String>() ...…
以原子方式递增存储在 ConcurrentHashMap 中的计数器
我想从网络应用程序的各个地方收集一些指标。为了简单起见,所有这些都是计数器,因此唯一的修饰符操作是将它们加 1。 增量将是并发的并且经常发生。…
Java 并发:“级联”中的 Volatile 与 Final变量?
? final Map<Integer,Map<String,Integer>> status = new ConcurrentHashMap<Integer, Map<String,Integer>>() Map<Integer,Map&l…
使用 java ConcurrentHashMap 实现缓存
我想在 Web java 应用程序中实现重量级对象的简单缓存。但我不知道如何正确地做到这一点。 我是否缺少某些内容或 ConcurrentHashMap 方法(putIfAbsen…
我什么时候应该使用ConcurrentSkipListMap?
在 Java 中,ConcurrentHashMap 提供了更好的多线程解决方案。那么什么时候应该使用ConcurrentSkipListMap呢?是不是冗余? 这两者之间的多线程方面是…
ConcurrentHashMap.get() 是否能保证通过不同的线程看到先前的 ConcurrentHashMap.put() ?
是 ConcurrentHashMap.get() 保证看到以前的ConcurrentHashMap.put() 通过不同的线程?我的期望是这样,阅读 JavaDocs 似乎表明了这一点,但我 99% 相…
ConcurrentHashMap 是否可以有超过 32 个锁
我读到 ConcurrentHashMap 在多线程中比 Hashtable 效果更好,因为它具有存储桶级别的锁而不是映射范围的锁。每张地图最多可以有 32 个锁。想知道为什…