我使用andengine开发游戏。在退出时的J2me游戏中,我将所有对象都设为null
即:
Image img;
Sprite s1;
When exit application ,
img=null;
s1=null;
在android中我将使用System.gc()或者我需要在退出应用时将所有纹理,textureRegion和sprite设为make为null?
答案 0 :(得分:5)
我认为你不应该明确地致电System.gc()
。 Android操作系统可以解决这个问题。
“从您的应用中拨打System.gc()
就像从您的家中提供电力连接,点亮您整个社会的灯光”
我的意思是它减慢了你的应用程序以清理系统的所有垃圾.......
N_JOY。
答案 1 :(得分:2)
答案 2 :(得分:0)
在 Android中存在垃圾收集器时,手动调用GC绝不是一个好习惯。 GC围绕启发式算法进行组织,这些算法在放置到自己的设备时效果最佳。手动调用GC通常会降低性能。
偶尔,在一些相对罕见的情况下,人们可能会发现某个特定的GC出错了,然后手动调用GC可以改善性能。这是因为实际上不可能实现“完美”的GC,它将在所有情况下以最佳方式管理内存。这种情况很难预测,并取决于许多微妙的实施细节。 “良好实践”是让GC独立运行;手动调用GC是一个例外情况,只有在实际出现性能问题后才能设想。
最好花更多精力避免不必要的对象创建(比如在循环中创建对象)。