2011-08-01 150 views
2

我只是想知道是否有一種方法可以阻止JFreeChart抖動堆,或者是一種不這麼做的替代方法。 SpreadsheetDate,MillisecondDay佔用了大約70 MB的堆,但垃圾收集器可能也被摔壞了。他們是我應用程序中堆空間的最大用戶。還有TimeSeriesDataItem使用12 MB。對於所有圖表,每200毫秒左右記錄一次。JFreeChart堆空間

我也在更新/存儲一些不會立即使用的公平數據集,只有當用戶點擊UI中的項目才能顯示它們。

此外,在Visual VM中是否有可能顯示很多垃圾回收抖動是由於內存採樣器表中的特定類名造成的?

乾杯,
克里斯

+2

你試圖用JProfiler運行你的項目,在那裏你可以看到所有'非閉合對象' – mKorbel

+0

'DynamicTimeSeriesCollection',顯示[here](http:// stackoverflow.com/questions/5048852/using-jfreechart-to-display-recent-changes-in-a-time-series/5048863#5048863),可以替代嗎?它的配置文件很好,約爲20 MB。 – trashgod

+0

@mKorbel將與JProfiler一起去,可能會有用!我可以使用學術許可證的方式完成...... –

回答

3

我想我解決了這個用一個簡單的修復 - 我現在每天addOrUpdate運算後打電話timeSeries.removeAgedItems(false)。作品一種享受,我的堆使用率下降:)