【问题标题】:Android : about performanceAndroid:关于性能
【发布时间】:2016-01-14 23:39:58
【问题描述】:

我正在制作一款 Android 游戏,它开始在 CPU 方面变得有点太需要了,所以我问自己我可以改变什么来让手机分配内存更容易一些。

所以我的问题是:赋值比实例化更不需要吗?

假设我有一个onDraw 方法被调用来在我的视图上绘制精灵和东西。每次调用它时,我都会在此方法中执行rect1 = new Rect(...)。在我的类构造函数中声明 rect1 并执行 rect1.bottom = ...; rect1.top = ...; 通常会更好(对于这个特定示例)?

【问题讨论】:

    标签: android performance optimization


    【解决方案1】:

    Java 游戏编程(Android 或其他)的一般规则是在游戏循环中尽可能避免new。尽可能重复使用。创建新的临时对象不仅耗时,而且还会更频繁地触发垃圾收集器,浪费更多周期。

    【讨论】:

    • 事实上,Android 曾经对 onDraw 中对 new 的任何调用都有 lints。我认为它仍然存在。
    【解决方案2】:

    内存分配总是比在 OnDraw 中分配值更昂贵。

    【讨论】:

      猜你喜欢
      • 2011-03-05
      • 2023-03-11
      • 2012-01-31
      • 2016-08-16
      • 2012-07-15
      • 2014-01-13
      • 2011-05-28
      • 2012-03-25
      • 1970-01-01
      相关资源
      最近更新 更多