Return to Video

如何改写代码以减少开销

  • 0:00 - 0:03
    我们可以在代码中做微调以避免多余的开销
  • 0:03 - 0:05
    让我们来看一下对比版本
  • 0:05 - 0:08
    这里并非采取合并单元的方式创建每一行
  • 0:08 - 0:12
    而是采用字符串生成器 (StringBuilder) 使用单独的字符串构建每行
  • 0:12 - 0:14
    注意,字符串生成器的循环外实例化
  • 0:14 - 0:16
    只实例化了一次
  • 0:16 - 0:18
    接下来,我们简单的使用它作为一个缓冲器
  • 0:18 - 0:21
    我们首先明确该循环的每次迭代
  • 0:21 - 0:24
    然后附加整数型的一条字符串来表示该行对于循环迭代
  • 0:24 - 0:27
    参考教师笔记里关于代码段的更多细节
  • 0:27 - 0:28
    现在来验证一下
  • 0:28 - 0:31
    你会想要继续修改这段代码 (memory_churn_optimized)
  • 0:31 - 0:36
    在跟踪视图和内存监视器中
  • 0:36 - 0:40
    确认我们已经减少GC的发生量到很短的时间窗内
  • 0:40 - 0:43
    你也可以用定位跟踪视图位置做确认
  • 0:43 - 0:44
    如果你使用跟踪视图定位,或者
  • 0:44 - 0:48
    如果在跟踪视图或内存监视器发现未知问题
  • 0:48 - 0:51
    请在论坛分享代码输出情况的截图
  • 0:51 - 0:52
    我们很有兴趣看看你遇到了什么问题
  • 0:53 - 0:59
    对于我们来说,即使做了这些改变,海盗人(Perf pirate)依然处于暂停状态
  • 0:59 - 1:00
    但是这次需要的时间更少
  • Niezsynchronizowane
    从这一点而言,这个函数在当前情况下
  • Niezsynchronizowane
    还是很不错的
Tytuł:
如何改写代码以减少开销
Opis:

本视频简要介绍一种改写代码以提升效率的方式

more » « less
Video Language:
English
Team:
Udacity
Projekt:
ud825 - Android Performance
Duration:
01:05

Chinese, Simplified subtitles

Revisions Compare revisions