【问题标题】:Calculate the delta in a ConcurrentHashmap in Java在 Java 中计算 ConcurrentHashmap 中的增量
【发布时间】:2013-07-04 11:13:59
【问题描述】:

我在 Java 中使用 ConcurrentHashmap,现在我想将此 hashmap 复制到另一个在服务器上运行的变量,因此首先我将复制整个 hashmap,但随后我只想传输 Hashmap 的增量。

例如,我有 20 个条目,其中 2 个条目会发生变化。然后我想发送一条消息,仅更改了两个条目,以在服务器上获取相同的 hashmap 并减少过载。

那么有什么办法可以计算这个增量吗? 谢谢。

【问题讨论】:

  • 你可以使用 Guava 的MapDifference

标签: java concurrency hashmap delta


【解决方案1】:

您如何将地图传输到服务器?

最初的解决方案是在发送之前克隆原始地图。如果是第一次,请发送完整的克隆。如果不是,则将当前克隆与前一个克隆进行比较并发送差异。用新的克隆替换之前的克隆,并在下一次迭代中执行相同操作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-10-31
    • 2021-04-10
    • 1970-01-01
    • 2011-02-19
    • 1970-01-01
    • 2015-07-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多