Android上做多线程下载要统计下载速度,思考了一下这么设计的:
记录下过去15s(一直记录,但只保存当前时间向前15秒)内每一次读取网络数据的起讫时间,在刷新速度时,将这15秒分成5组也即每组3s,计算每一租的平均速度(每一秒读到的总网络数据大小除以这一秒最后一次读网络数据结束时间和第一次读网络数据的开始时间的差值),这样得到五组数据,再配以权重比如各值依次乘以0.05,0.1,0.2,0.3,0.35再相加(权重设计依据需求),这样得到的数值应该是减少了网络抖动,比较稳定。
水平有限,如果有其它好的设计,希望不吝赐教!
多线程下载速度设计尝试
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 个别时候我们可能需要知道我们当前的网络速度是多少,例如我们在下载的时候,NSByteCountFormatter是...