MapDB清除了GC上的缓存项

时间:2015-09-11 18:10:50

标签: java garbage-collection mapdb

我正在为一个应用程序评估MapDB。我按照以下方式创建数据库。

DB db = DBMaker.fileDB(new File("mapdbtest1")).cacheHashTableEnable()
                .cacheSize(50000).closeOnJvmShutdown()
                .encryptionEnable("password").make();

在数据库中放入50000个对象然后显式调用GC后,使用的大小太小,看起来对象不再存在于内存缓存中。我期待cacheSize没有。对象总是在内存中,不管GC或OOM如何,其余部分都要交换。

=======================
Memory : after committing to DB
free memory: 1426 MB
allocated memory: 2860 MB
used memory: 1433 MB
max memory: 3641 MB
total free memory: 2207 MB
=======================
=======================
Memory : after gc
free memory: 2479 MB
allocated memory: 2494 MB
used memory: 14 MB
max memory: 3641 MB
total free memory: 3626 MB
=======================

我的理解错了吗?

0 个答案:

没有答案