java - 高性能并发 MultiMap Java/Scala

标签 java scala concurrency multimap

我正在寻找一种高性能、并发的 MultiMap。我到处搜索,但我根本找不到使用与 ConcurrentHashMap 相同的方法的解决方案(仅锁定哈希数组的一部分)。

多图会经常被读取、添加和删除。

多映射键是一个字符串,它的值是任意的。

我需要 O(1) 来查找给定键的所有值,O(N) 可以删除,但 O(logN) 将是首选。

删除给定键的最后一个值将从键中删除值的容器至关重要,以免内存泄漏。

编辑:这是我构建的解决方案,在 ApacheV2 下可用: Index (multimap)

最佳答案

为什么不用一些很好的类似 Scala 的方法来包装 ConcurrentHashMap[T,ConcurrentLinkedQueue[U]](例如,隐式转换为 Iterable 或您需要的任何东西,以及更新方法)?

关于java - 高性能并发 MultiMap Java/Scala,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3635292/

相关文章:

Spring框架MVC "concurrency"?

java - 如何在ThreadPoolTask​​Executor中持久化对象

java - 调用 DropBox getAccountInfo() 时出现断言错误

java - 返回语句在 Java 中不起作用

java - checkstyle 不检查 XML 中的空格缩进

java - 创建的 JAR 中的 list 存在 ClassNotFoundException 问题

eclipse - 使用 maven-scala-plugin 构建 jar

scala - 清除 Scala 工作表的输出

scala - 引发多次迭代内存不足

scala - future 和延迟 : How to prioritize the execution of some Futures over the others