Android触摸事件列表和垃圾收集器

时间:2011-07-03 04:35:00

标签: java android garbage-collection

我的游戏由于GC而口吃,其范围从40ms到140ms。 我的游戏不是在更新或渲染线程中创建新对象或任何东西所以我非常确定我的项目是干净的除了一个。 在更新方法中,我有一个List<TouchEvents> touchEvents = getTouchEvents(); 我很确定这是因为它需要我触摸屏幕(使用ACTION_MOVE事件),每次我移动时只有GC才会启动GC。 我该如何优化或防止这种情况?

编辑: 现在我开始认为它与我的FPS限制方法有关。 我假设因为我将FPS限制在30而GC没有足够的时间而不干扰我的游戏。 在我拿下限制器并以60FPS的速度运行游戏后,我想出了这个理论。 当以60FPS运行但不是30FPS时,游戏完美平稳。 有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我个人不建议限制fps。相反,让它尽可能快地运行,并参考运动和物理时的经过时间。