React-native 进行下载任务时,低配手机发热发烫,运行卡慢的解决办法
在用react-antive编写的App实现下载功能,进行多个任务下载时,手机会出现发热,发烫,运行非常缓慢的问题。(原生应用也可能有)
经分析,发热发烫,一般有以下几种可能:
1 、周围环境热,手机散热不过来
2、手机系统,后台运行程序多,手机资源一直在后台消耗,当然手机会发热发烫
3、电池问题,换了电池试下
4、程序运行的算法特别消耗资源,CPU高负荷工作
排除硬件原因,我的App原因聚焦在CPU上,然后我查看手机CPU使用情况
明显有个CPU有100%的占用,这应该就是导致上述问题的原因。
现在就开始想办法降低CPU占用
分析CPU占用的原因,一般有以下几种:
(1) 复杂计算
运行一些算法处理,比如:音视频编解码、图像处理、科学计算等等,特别是一些浮点数的运算。
(2) 持续占用CPU
某些高优先级的进程/线程持续占用CPU,很少或者从来不sleep,类似 while(1) {}
(3) 数据拷贝
频繁进行大量的数据拷贝。
(4) 频繁的系统调用
比如:频繁调用 printf 打印、读写硬盘、网络收发等等。
经分析,我的应用是在下载时,用了一个While循环来进行下载,所以
1、在下载部分的While循环里,我添加了如下代码:
try{ Thread.sleep(2);}catch (Exception e){e.printStackTrace(); }
重新编译,查看CPU如下:此时手机已经好转了一大部分
2、继续降低IO读写频率,做法就是加大下载缓存区域,这样就OK啦
原本我的缓存区仅为1K,现在我改为了1000K
private static final int BUFFER_SIZE = 1000*1024;
React-native 进行下载任务时,低配手机发热发烫,运行卡慢的解决办法相关推荐
- 从administrators组中删除guest来宾账户时提示无法在内置账号上运行此操作的解决办法...
从administrators组中删除guest来宾账户时提示无法在内置账号上运行此操作 我的win2003服务器曾经杀出过木马,后来发现guest账号还会自动开启 经检查,guest账号居然跑到ad ...
- 菜鸡游戏 云游戏平台 低配手机、电视、PCMAC电脑、平板 畅玩大型游戏
[推荐]2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 菜鸡游戏是一个供玩家免费下载的云游戏平台,为手机.电脑等设备提供畅玩大型游戏的服务.用户通过"菜鸡游 ...
- android8.0 go 机型,安卓8.0良心!还开发了安卓GO, 适配给低配手机,魅族很尴尬!...
天天都逛手机圈的都知道,手机圈今年最精彩了吧,iPhone的十周年的苹果手机也快来了,并且还带来IOS11系统,不过安卓阵营也发力,今年8月也要甩出安卓8.0系统了,据称媲美IOS11系统,拭目以 ...
- 下载的时候提示:“写入到文件时产生错误(请用磁盘检查工具检查修复)”的解决办法
载的时候提示:"写入到文件时产生错误(请用磁盘检查工具检查修复)"的解决办法: 下载的文件要是大于2G,而你的硬盘分区格式是FAT32的话就有可能会出现这种情况,虽然FAT32支持 ...
- go get 下载包时提示 nnection failed because connected host has failed to respond 解决方法.
go get 下载包时提示 nnection failed because connected host has failed to respond 解决方法. 第一步: 打开 cmd 输入命令配置国 ...
- npm 安装yeoman时出现npm WARN deprecated npmconf@2.1.2报错...解决办法
npm 安装yeoman时出现npm WARN deprecated npmconf@2.1.2报错-解决办法 我是nodeJS 小白,在用npm命令安装yeoman是,给出了这样的错误提示: $ n ...
- iOS11隐藏导航条后顶部有20单位的空白或者pop页面时明显感觉前一个页面有上移的异常动画的解决办法。
iOS11隐藏导航条后顶部有20单位的空白或者pop页面时明显感觉前一个页面有上移的异常动画的解决办法. 参考文章: (1)iOS11隐藏导航条后顶部有20单位的空白或者pop页面时明显感觉前一个页面 ...
- (PD)PowerDesigner设计表时显示注释列Comment,Columns中没有Comment的解决办法(关联MySQL)
1.在所要编辑的表上双击,打开Table Properties窗口,并将上面的选项卡切换到Columns,如下图: 2.点击Customize Columns and Filter按钮,下图红框中的按 ...
- 记录webView接入h5界面时,调起相册、文件、相机无效的解决办法
记录webView接入h5界面时,调起相册.文件.相机无效的解决办法. 在开发项目时,接入一个h5界面.使用webview时,发现界面显示正常,但是按钮不论怎么点都无效,但是m站和ios都正常.后来上 ...
- Mac如何删除在磁盘空间中的可清除空间以及Mac开机时进度条卡100%的解决办法
Mac如何删除在磁盘空间中的可清除空间以及Mac开机时进度条卡100%的解决办法 1.Mac如何删除在磁盘空间中的可清除空间 对于mac来说磁盘的空间是十分宝贵的,小编会定期的查看一下自己电脑的磁盘使 ...
最新文章
- python max函数_Python3
- 文档计算机无法分页,同一EXCEL文件在不同计算机上显示分页不同解决办法(6页)-原创力文档...
- how Lordec maps the long reads to DeBruijn Graph
- APMServ伪静态设置
- JSDOM模型的样例
- 分享10个jQuery页面动态编辑插件
- 447. 回旋镖的数量
- python-多继承
- 解决Android studio 加载不出网络图片的步骤
- Java集合Collection接口中的常用方法演示
- 不通过App Store实现ios应用分发下载安装
- 游戏付费中的金融学和心理学小知识
- java九宫格案例讲解_Java实现九宫格的教程详解
- html怎么将一张图撑大,div 如何防止图片太大被撑开
- java.lang.UnsatisfiedLinkError: C:\Users\Administrator\AppData\Local\Temp\2\librocksdbjni91
- 机器学习平台系列——XGB feature_names mismatch 问题解决方案
- 实训期间的开发过程及心得体会
- Hank的无线802.11学习笔记--2
- Linux per_cpu机制的详解
- Tabular系列之问题1:如何利用其他人的账号进行权限测试?