我正在学习java,因为我学习了如何在Android中编程。我的印象是java为你处理所有内存管理,但这似乎不是真的。我的小应用程序运行良好,但现在我正在为有很多图形的幼儿制作一个益智应用程序。应用程序运行一段时间后,我已经收到了大量的内存不足异常。目前它运行正常,但我通过将位图指针设置为null解决了这个问题。在每个服务结束时,我将所有位图对象设置为null并使其工作。
它有效,但我不明白我是否应该释放java中的指针?
答案 0 :(得分:0)
将位图设置为null将允许垃圾收集器运行并清理它(您可以通过先调用回收来加快进程)。如果您不需要图像,最好这样做,否则保持大量的大图像将快速使用您的应用程序允许运行的所有内存(android并没有给你很多)。
如果图像超出范围,这将自动发生(但再次调用回收将加快此过程),但如果你有很多全局静态图像可以保留很多图像,那就是你将要陷入困境。