如何改写代码以减少开销
-
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对于我们来说,即使做了这些改变,海盗人依然处于暂停状态
-
0:59 - 1:01但是这次需要的时间更少
-
1:01 - 1:03从这一点而言,这个函数在当前情况下
-
1:03 - 1:05还是很不错的
![]() |
Elva Wang edited Chinese, Simplified subtitles for 04-15 Improve Your Code To Reduce Churn | |
![]() |
Elva Wang edited Chinese, Simplified subtitles for 04-15 Improve Your Code To Reduce Churn | |
![]() |
Elva Wang edited Chinese, Simplified subtitles for 04-15 Improve Your Code To Reduce Churn | |
![]() |
Elva Wang edited Chinese, Simplified subtitles for 04-15 Improve Your Code To Reduce Churn | |
![]() |
Elva Wang edited Chinese, Simplified subtitles for 04-15 Improve Your Code To Reduce Churn | |
![]() |
Elva Wang edited Chinese, Simplified subtitles for 04-15 Improve Your Code To Reduce Churn |