MapDB 0.9-snapshot を使用しています。数百万のレコード String->String を含むコレクションがあります。私の問題は、そのような ConcurrentMap(s) のメソッド size() が多くの時間と大量のメモリを消費することです (OutOfMemory エラーさえあります)。
他にそのような問題を経験した人はいますか?ありがとさよなら
MapDB 0.9-snapshot を使用しています。数百万のレコード String->String を含むコレクションがあります。私の問題は、そのような ConcurrentMap(s) のメソッド size() が多くの時間と大量のメモリを消費することです (OutOfMemory エラーさえあります)。
他にそのような問題を経験した人はいますか?ありがとさよなら
MapDBは、コレクション内のすべてのエントリをトラバースしてカウントする必要があります。countを外部のAtomic.Longに保存し、個別に取得できます。例は次のとおりです。
https://github.com/jankotek/MapDB/blob/master/src/test/java/examples/Map_Size_Counter.java
OOEMは発生しないはずです。これは、GCオーバーヘッドアサーションが原因である可能性があります。