[英]Memory Leaks in Java (Swing)
我的自定义JPanel保留了大量int数组,如以下YourKit中所示:
(来源: gyazo.com )
我以为这是图形对象未被处理的结果,但是即使配置了我使用的每个图形对象,内存问题仍然会发生。
如果我强制执行堆转储,则垃圾收集器将删除对象(并且这些数组被标记为不可访问)。 此行为导致Java达到较高的内存分配(〜700MB)。
在秋千/ JPanels中是否存在其他此类问题的常见来源?
可以使用JTable
代替自定义的JPanel
,它使用flyweight模式仅渲染可见单元格。 此外,合适的TableModel
可以使您最小化数据存储所需的内存。 最后, JTable
以一种可以使用户更易于管理的大型数据集的方式支持排序和过滤 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.