我正在研究一個應用程序,它將大量數據從數據庫讀入到Map<String,Map<String,Map<String,String>>>
中,對其進行處理,並使用內部xml編寫器將處理後的報告寫入電子表格。整個運行可能需要大約12個小時。使用HashMap進行Java存儲器管理
我發現我越來越
Exception in thread "CursorController-Thread-0" java.lang.OutOfMemoryError: Java heap space
at java.lang.AbstractStringBuilder.<init>(AbstractStringBuilder.java:45)
at java.lang.StringBuilder.<init>(StringBuilder.java:68)
當我試圖寫這個巨型文件。出於這個原因,我認爲最好是在完成處理時寫出每個Map<String,Map<String,String>>
(注意更深一層)。
我的問題是,我怎麼能確保Map<String,Map<String,String>>
沒有保留在內存中,因爲地圖>>仍然包含它?
正是我在找的!感謝您的快速回答。 –
沒問題,不客氣。 – aioobe