[发明专利]多线程下载方法和装置在审
申请号: | 201610908996.5 | 申请日: | 2016-10-18 |
公开(公告)号: | CN106998349A | 公开(公告)日: | 2017-08-01 |
发明(设计)人: | 万征 | 申请(专利权)人: | 深圳大宇无限科技有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 广州华进联合专利商标代理有限公司44224 | 代理人: | 谢曲曲 |
地址: | 518000 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 多线程 下载 方法 装置 | ||
技术领域
本发明涉及网络技术领域,特别是涉及一种多线程下载方法和装置。
背景技术
随着互联网技术的发展,人们可以从网络上通过下载来获取各种各样的资源。如果通过单线程下载,由于TCP窗口大小的限制,单线程下载很难充分利用网络带宽,下载速度不能得到充分的发挥。所以越来越多的下载工具和网站开始允许用户进行多线程下载。线程可以理解为下载的通道,一个线程就是一个文件的下载通道,多线程也就是同时开启多个下载通道。通过开启多线程下载,同时开启多个下载通道,能够提高带宽利用率,并提高下载速度。
但是一般的多线程下载工具需要用户手动或系统自动设置并发线程数量,而且并发线程数量一旦确定,在整个文件下载过程中便不会发生变化。当并发线程数量过多,会导致每个线程分配的下载片段的过小,从而造成多余的系统开销,而且还会占满带宽,造成网络拥塞,导致数据延迟和丢失的可能性大大增加,使下载速度不增反减。当并发线程数量过少,又会导致不能充分利用带宽,从而会造成下载速度慢。而且网络环境经常是不稳定的,网络数据的传输速度并不能一直保持稳定,下载时,预先设置的并发线程数量,很难在充分利用带宽的同时,尽量减少系统资源开销。
发明内容
基于此,有必要提供一种多线程下载方法和装置,能够在充分利用网络带宽的同时,减少系统资源开销。
一种多线程下载方法,包括:
接收下载指令,根据下载指令开启预设并发线程数量的线程对目标文件进行下载;
在下载的过程中执行:增加或减少线程,每次增加线程后,若增加线程后的下载速度大于增加线程前的下载速度,则继续增加线程,否则减少线程;每次减少线程后,若减少线程后的下载速度大于减少线程前的下载速度,则继续减少线程,否则增加线程。
在其中一个实施例中,在接收下载指令,根据下载指令开启预设数量的线程对目标文件进行下载之前,还包括:
获取网络类型,根据网络类型设置对应的预设并发线程数量。
在其中一个实施例中,每次增加线程后,若增加线程后的下载速度大于增加线程前的下载速度,则继续增加线程,否则减少线程,包括:
每次增加线程后,经过预设时间开始比较增加线程后的下载速度与增加线程前的下载速度,若增加线程后的下载速度大于增加线程前的下载速度,则继续增加线程,否则减少线程;
每次减少线程后,若减少线程后的下载速度大于减少线程前的下载速度,则继续减少线程,否则增加线程,包括:
每次减少线程后,经过预设时间开始比较减少线程后的下载速度与减少线程前的下载速度,若减少线程后的下载速度大于减少线程前的下载速度,则继续减少线程,否则增加线程。
在其中一个实施例中,每次增加线程后,若增加线程后的下载速度大于增加线程前的下载速度,则继续增加线程,否则减少线程,包括:
每次增加线程后,若增加线程后的下载速度大于增加线程前的下载速度,且增加线程后的下载速度未超过预设下载速度阈值,则继续增加线程,否则减少线程;
每次减少线程后,若减少线程后的下载速度大于减少线程前的下载速度,则继续减少线程,否则增加线程,包括:
每次减少线程后,若减少线程后的下载速度大于减少线程前的下载速度,且减少线程后的下载速度未超过预设下载速度阈值,则继续减少线程,否则增加线程。
在其中一个实施例中,方法还包括:
当所有线程的下载任务都已完成时,将所有文件片段组合成目标文件。
一种多线程下载装置,包括:
下载模块,用于接收下载指令,根据下载指令开启预设并发线程数量的线程对目标文件进行下载;
线程控制模块,用于在下载过程中,增加或减少线程,每次增加线程后,若增加线程后的下载速度大于增加线程前的下载速度,则继续增加线程,否则减少线程;每次减少线程后,若减少线程后的下载速度大于减少前的下载速度,则继续减少线程,否则增加线程。
在其中一个实施例中,装置还包括:
线程设置模块,用于在接收下载指令,根据下载指令开启预设数量的线程对目标文件进行下载之前,获取网络类型,根据网络类型设置对应的预设并发线程数量。
在其中一个实施例中,线程控制模块用于在下载过程中,增加或减少线程,每次增加线程后,经过预设时间开始比较增加线程后的下载速度与增加线程前的下载速度,若增加线程后的下载速度大于增加线程前的下载速度,则继续增加线程,否则减少线程;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳大宇无限科技有限公司,未经深圳大宇无限科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610908996.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:应用消息推送方法和装置
- 下一篇:传感器组件及终端