我正在創建一個java程序,其中一些數據被添加到數組列表中。如何立即從內存中刪除剛剛從數組列表中刪除的值
一些處理是在一個循環中,只是一個迭代結束前我加入一個新的節點列表中的循環中,執行操作使用節點,然後刪除該節點使用arraylist.remove()的循環。我也在運行System.gc();就在循環迭代結束之前。
但是,當我使用內存轉儲時,我發現arraylist仍然保存着我在不同循環迭代中使用的所有值......如何從內存中清除所有這些值?我想在循環迭代結束之前這樣做,以便數組列表的大小永遠不會增長?
爲什麼你關心?使用像Java這樣的內存管理語言應該隱藏你的這些細節。 –
我正在使用的程序將被用於提取數百萬條記錄,並且在內存耗盡的速度下,我無法在程序的一次(甚至幾次)運行中獲取所有數據,沒有使用我的機器的整個內存... – Arvind
爲什麼你不使用數組,如果你想要一個固定的大小? – Robert