0

我正在使用 MapDB 0.9 快照。我有一些包含数百万条记录 String->String 的集合。我的问题是这种 ConcurrentMap(s) 上的方法 size() 需要大量时间和大量内存(我什至有 OutOfMemory 错误)。

有没有其他人遇到过这样的问题?谢谢再见

4

1 回答 1

2

MapDB 需要遍历集合中的所有条目来统计它。您可以将计数存储在外部 Atomic.Long 中并单独检索,示例如下:

https://github.com/jankotek/MapDB/blob/master/src/test/java/examples/Map_Size_Counter.java

OOEM 不应该发生,这可能是由于 GC 开销断言。

于 2013-03-13T17:32:05.153 回答