Android 性能优化 降低cpu和内存消耗之while循环

来源:互联网 发布:mac版adobe flash cs6 编辑:程序博客网 时间:2024/05/19 00:40

在app发展中期,大多数功能都已经健全,优化性能问题成为了主要的工作任务。很多时候页面卡顿或者app占用内存过高是由于一些耗时操作,比如数据库操作引起的。但是也有些情况不是耗时操作引起的,比如while循环。

比如在一个下载功能里面,我们尽量少的进行数据库的数据更新,可以减少很多内存消耗,从而提高界面帧率。但是我们在把文件数据写入本地磁盘的时候必要要有一个while循环来不断的写入。比如

while (-1 == (offset = inStream.read(buffer, 0, buffer.length)){
raFile.write(buffer, 0, offset);
}
这个while循环在很长一段事件内都是不会退出的,占用的大量的cpu时间,这时候只要在while循环里面添加
try {    Thread.sleep(10);}catch (Exception e){    e.printStackTrace();}
便可以降低cpu占用时间,从而降低消耗。使页面更流畅。

0 0