Java applet可能耗尽了太多内存

时间:2012-06-19 23:55:12

标签: java memory applet memory-leaks

我有一种情况是Java Applet在多次打开后挂起。这只发生在具有低RAM的系统上,这使我相信可能存在内存泄漏,或者只是分配给堆的内存不足。

如何针对内存泄漏测试applet?像JProbe这样的东西会起作用吗?

1 个答案:

答案 0 :(得分:0)

我不认为特定工作站上的低ram是个问题。

如果没有另外指定(使用-Xmx设置),Java applet会在开始时获得64MB内存。 JVM最初从系统保留了这个RAM量,因此如果系统可用内存较少,JVM(以及Applet)甚至都不会启动。

但如果它启动,则保证可以使用所有已配置的内存。 因此,如果您的Applet仍缺乏内存,则有两种可能:

  1. 默认设置(64MB)为低 - 配置小程序以获得更多RAM。
  2. 您没有正确释放资源,也没有泄漏内存。看一下你的小程序的lifecycle methods,并检查你是否正在释放资源。
  3. 另外,你说最后,你的小程序挂起。要查看发生了什么,请在生命周期方法enable Java Console中添加一些记录,然后查找异常。