sga*_*gan 39 java collections concurrency map concurrenthashmap
JDK中附带了CopyOnWrite*用于实现Set和List,但没有对Map和我常常感叹这个事实.我知道有其他的集合实现有它们,但如果一个标准出货将是很好的.这似乎是一个明显的遗漏,我想知道它是否有充分的理由.任何人都知道为什么这被遗漏了?
Fre*_*mee 28
我想这取决于你的用例,但是当你已经拥有ConcurrentHashMap时,为什么还需要一个CopyOnWriteMap ?
对于包含许多读者且只有一个或几个更新的普通查找表,它非常适合.
与写集合上的副本相比:
读并发:
等于写集合的副本.几个读者可以以无锁方式同时从地图中检索元素.
写并发:
比基本序列化更新的写入集合上的副本更好的并发性(一次更新一次).使用并发哈希映射,您很有可能同时执行多个更新.如果您的哈希键均匀分布.
如果确实希望在写入映射上具有副本的效果,则始终可以初始化并发级别为1的ConcurrentHashMap.
| 归档时间: |
|
| 查看次数: |
14720 次 |
| 最近记录: |