java - ConcurrentHashMap 是否适合快速更新并发数据结构?

标签 java concurrency

我正在设计一个将 IP 地址映射到有关该 IP 地址的特定信息的应用程序。目前,我将信息存储在 ConcurrentHashMap 中。 key 列表可能会经常更改,因此我会获取列表的最新副本并每分钟更新一次。

但是,我可能每分钟查询此数据结构几千次。使用 ConcurrentHashMap 有意义吗?更新列表时是否会有明显的延迟(大于 1 毫秒)?列表中最多可以有 1000 个项目。

感谢您的帮助!

最佳答案

您可以在文档中搜索有关 ConcurrentHashMap 的信息,您会发现检索操作通常不会阻塞,因此它们的行为就像在普通的 HashMap 中一样。检索操作包括删除和获取。您说键列表可能会经常更改,所以是的,我建议您使用 ConcurrentHashMap。 这是文档:http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ConcurrentHashMap.html

关于java - ConcurrentHashMap 是否适合快速更新并发数据结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24563016/

相关文章:

java - 如何从 Hibernate MetadataSources 中发现完全限定的表列

java - 一台机器可以使用Java中的socket同时充当客户端和服务器吗?

Java 并发 : Are "get(Key) for HashMap and ConcurrentHashMap equal in performance?

multithreading - Apache Camel拆分与线程池并行运行,为什么?

实现 Go goroutine 或 Go channel 的 C++ 库?

java - 在 Java 中解析日期的毫秒分数

java - 初始化 Spring 应用程序时如何确定哪个方法花费了这么长时间

java - 用限制替换所有非数字

python - 如何使用 Python 中的线程来并行化 AWS S3 API 调用?

java - 两个线程进入 runnable 的同步方法