我正在创建一个java程序,其中一些数据被添加到数组列表中。如何立即从内存中删除刚刚从数组列表中删除的值
一些处理是在一个循环中,只是一个迭代结束前我加入一个新的节点列表中的循环中,执行操作使用节点,然后删除该节点使用arraylist.remove()的循环。我也在运行System.gc();就在循环迭代结束之前。
但是,当我使用内存转储时,我发现arraylist仍然保存着我在不同循环迭代中使用的所有值......如何从内存中清除所有这些值?我想在循环迭代结束之前这样做,以便数组列表的大小永远不会增长?
为什么你关心?使用像Java这样的内存管理语言应该隐藏你的这些细节。 –
我正在使用的程序将被用于提取数百万条记录,并且在内存耗尽的速度下,我无法在程序的一次(甚至几次)运行中获取所有数据,没有使用我的机器的整个内存... – Arvind
为什么你不使用数组,如果你想要一个固定的大小? – Robert