如何将对象使用的内存及其所有数据结构回收到我的应用程序内存中,否则System.gc()
只会建议而不一定执行内存检查。这也包括像finalize
.
换句话说,假设我有一个HashMap
并且我希望它存储的所有数据都从内存中删除。我通常会使用clean
方法清理这种类型的集合或将其附加到,null
但这似乎不会将内存空间返回给应用程序?
编辑:
让我们说以下内容:
TIntObjectHashMap<byte[]> map=new TIntObjectHashMap<byte[]>();
//fill the map with 20GB
map.clear();
//Or map=null;
20GB不应该免费退回吗?就是那个问题。