我见过很多Android答案,建议在某些情况下调用垃圾收集器.
在进行需要大量内存的操作之前,在Android中请求垃圾收集器是一个好习惯吗?如果没有,如果我收到OutOfMemory错误,我应该只调用它吗?
在使用垃圾收集器之前还有其他我应该使用的东西吗?
我正在写一个图片库应用程序,我一直遇到内存不足错误.我缓存了所有图像,但是当我尝试快速切换图像时会出现问题.我假设应用程序分配的内存比GC有时间释放它们更快(因为当我慢慢切换图像时不会发生崩溃).
在对这个问题进行了几天的敲击之后,我终于决定尝试在清单文件中给出largeHeap设置.在此设置之后,无论我在图像之间切换多快,我的应用程序都不会崩溃.
现在,我想知道是否存在使用largeHeap设置的任何约定或一般准则,因为如果使用注释应用程序使用largeHeap可能没有多大意义.一般来说,哪些应用程序适合largeHeap设置?
谢谢
我有一个奇怪的疑惑.我知道垃圾收集器有其自身的局限性.如果分配不好那么它可能会导致应用程序以异常方式响应的问题.
所以我的问题是,System.gc()在每个活动结束时强制调用垃圾收集器()是一种很好的编程习惯吗?
更新
每个人都说调用system.gc()根本没有用处.然后我想知道它为什么会出现在这里.DVM将决定何时运行垃圾收集器.那么该方法需要什么?
更新2
谢谢社区帮助我.但老实说,我从这个链接Java性能优化中获得了关于垃圾收集真正的Beauvoir的知识