Android上做多线程下载要统计下载速度,思考了一下这么设计的:
记录下过去15s(一直记录,但只保存当前时间向前15秒)内每一次读取网络数据的起讫时间,在刷新速度时,将这15秒分成5组也即每组3s,计算每一租的平均速度(每一秒读到的总网络数据大小除以这一秒最后一次读网络数据结束时间和第一次读网络数据的开始时间的差值),这样得到五组数据,再配以权重比如各值依次乘以0.05,0.1,0.2,0.3,0.35再相加(权重设计依据需求),这样得到的数值应该是减少了网络抖动,比较稳定。
水平有限,如果有其它好的设计,希望不吝赐教!
多线程下载速度设计尝试
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 个别时候我们可能需要知道我们当前的网络速度是多少,例如我们在下载的时候,NSByteCountFormatter是...