我在J2ME应用程序中获取OutOfMemoryException
。j2me应用程序中的OutOfMemoryError
如何找到导致此错误的原因?以及如何防止出现此错误?
我发出一个http请求。请求未完成时,屏幕显示加载图像(如浏览器显示加载页面时显示的内容)。这是通过创建一个图像并重新绘制屏幕来完成的。
create image 1 - > repaint - > create image 2-> repaint-> create image 3 - > repaint - > create image 1-> repaint - >。
我注意到(使用wtk内存监视器),这消耗了太多没有垃圾收集的内存。
然后我试着创建一个类的图像池。这个班级创建所有图像,然后显示它们。
create image 1 - > create image 2-> create image 3 - > repaint - > repaint - > repaint - > repaint - > repaint - >。
这第二种情况似乎消耗的内存不如第一种情况。 (使用wtk内存监视器)。
但是,我认为(不知道是否是这样)这两种方法都有助于导致此OutOfMemoryException
。
你在调试器中运行它吗? – 2009-07-01 18:39:36
我在设备上运行。当我使用模拟器运行时,我不会收到此错误。 – 2009-07-01 18:41:30
你使用什么IDE,如果有的话?它可能有一个分析器,您可能可以使用它来查找使用这么多内存的内容。 – kwatford 2009-07-01 18:42:59