文件下载方法、装置及终端设备制造方法及图纸

技术编号:15847109 阅读:23 留言:0更新日期:2017-07-18 20:03
本发明专利技术提出一种文件下载方法、装置及终端设备。其中,所述方法包括:根据目标下载文件的信息,启动多个分段下载线程,分别下载所述目标下载文件的多个分段文件;当所述多个分段下载线程中的一个分段下载线程完成下载任务时,将剩余分段下载线程中未下载内容最多的分段下载线程或预计剩余下载时间最长的分段下载线程作为待协助分段下载线程;按照预定比例截取所述待协助分段下载线程中未下载内容作为尾部片段;启动所述已完成下载任务的分段下载线程下载所述尾部片段。本发明专利技术可以提高文件下载速度。

【技术实现步骤摘要】
文件下载方法、装置及终端设备
本专利技术涉及计算机移动通信
,具体而言,涉及一种文件下载方法、装置及终端设备。
技术介绍
通过网络使用多线程进行文件下载时,目标文件分为多个分段文件被多个下载线程分别进行下载,下载后再合成一个完整的文件。由于系统在多线程调度运行的不确定性,多个下载线程去分别下载对应的分段文件时,并不能保证多个下载线程能够同时完成下载任务。在网络状况比较差的情况下,多个下载线程完成下载任务的时间点会相差很大,尤其在CPU性能较差的移动终端设备上,甚至还会出现一个下载线程还没开始下载,而另外一个下载线程已经完成下载任务的情况,因此,在网络状况或设备性能低等情况下,下载速度往往是非常慢的。
技术实现思路
本专利技术的目的在于提供一种文件下载方法、装置及终端设备,可以提高下载速度。为了实现上述目的,本专利技术实施例采用的技术方案如下:第一方面,本专利技术实施例提供了一种文件下载方法,包括:根据目标下载文件的信息,启动多个分段下载线程,分别下载所述目标下载文件的多个分段文件;当所述多个分段下载线程中的一个分段下载线程完成下载任务时,将剩余分段下载线程中未下载内容最多的分段下载线程或预计剩余下载时间最长的分段下载线程作为待协助分段下载线程;按照预定比例截取所述待协助分段下载线程中未下载内容作为尾部片段;启动所述已完成下载任务的分段下载线程下载所述尾部片段。进一步的,所述根据目标下载文件的信息,启动多个分段下载线程,分别下载所述目标下载文件的多个分段文件,包括:根据目标下载文件的信息,获取所述目标下载文件的文件大小;对所述目标下载文件进行文件分段处理,获得所述目标下载文件的多个分段文件;根据分段文件的数量分配多个分段下载线程;启动所述多个分配下载线程分别下载所述多个分段文件。进一步的,所述按照预定比例截取所述待协助分段下载线程未下载内容的尾部片段之前,还包括:判断待协助分段下载线程未下载内容的数据量是否小于预设阈值,如果是,则直接由所述待协助分段下载线程下载未下载内容,否则,执行所述按照预定比例截取所述待协助分段下载线程中未下载内容。进一步的,所述将剩余分段下载线程中未下载内容最多的分段下载线程或预计剩余下载时间最长的分段下载线程作为待协助分段下载线程之前,还包括:监听所有分段下载线程的下载状态以及下载中的分段文件的大小变化;判断是否有分段下载线程已完成下载任务;如果有分段下载线程已完成下载任务,则判断是否所有分段下载线程均已完成下载任务,如果没有完成,则执行将剩余分段下载线程中未下载内容最多的分段下载线程或预计剩余下载时间最长的分段下载线程作为待协助分段下载线程的步骤;如果没有分段下载线程已完成下载任务,返回监听的步骤。进一步的,所述按照预定比例截取所述待协助分段下载线程中未下载内容作为尾部片段,包括:将所述待协助分段下载线程未下载内容按照二分法分为头部片段和尾部片段;截取所述尾部片段,分配给已完成下载任务的分段下载线程。第二方面,本专利技术实施例提供了一种文件下载装置,所述装置包括第一启动模块,用于根据目标下载文件的信息,启动多个分段下载线程,分别下载所述目标下载文件的多个分段文件;获取模块,用于当所述多个分段下载线程中的一个分段下载线程完成下载任务时,将剩余分段下载线程中未下载内容最多的分段下载线程或预计剩余下载时间最长的分段下载线程作为待协助分段下载线程;截取模块,用于按照预定比例截取所述待协助分段下载线程中未下载内容作为尾部片段;第二启动模块,用于启动所述已完成下载任务的分段下载线程下载所述尾部片段。第三方面,本专利技术实施例提供了一种终端设备,包括:存储器以及处理器,所述存储器存储有上述文件下载装置中的模块,所述处理器用于运行存储在所述存储器内的模块。本专利技术实施例提供的文件下载方法、装置及终端设备,通过将其他分段下载线程中未下载内容最多的分段下载线程或预计剩余下载时间最长的分段下载线程作为待协助分段下载线程,按照预定比例截取所述待协助分段下载线程中未下载内容作为尾部片段,启动所述已完成下载任务的分段下载线程下载所述尾部片段,不断循环此过程,直至所有分段文件被下载完毕。由于已完成下载任务的下载线程可以帮助其他未完成下载任务的下载线程完成一部分下载任务,因此,整体的文件下载速度提高了。为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1示出了本专利技术实施例提供的终端设备的结构框图;图2示出了本专利技术第一实施例提供的一种文件下载方法的流程示意图;图3示出了本专利技术第二实施例提供的一种文件下载方法的流程示意图;图4示出了本专利技术第三实施例提供的一种文件下载装置的结构框图;图5示出了本专利技术第四实施例提供的一种文件下载装置的结构框图。具体实施方式本专利技术实施例所提供的文件下载方法及装置可应用于用户终端或服务器等终端设备中,例如,可运行于如图1所示的终端设备100中。于本专利技术实施例中,终端设备100优选为移动终端设备,例如可以包括智能手机、平板电脑、电子书阅读器、膝上型便携计算机、穿戴式移动终端等等。如图1所示,终端设备100包括存储器102、存储控制器104,一个或多个(图中仅示出一个)处理器106、外设接口108、射频模块110、音频模块112、触控屏幕114等。这些组件通过一条或多条通讯总线/信号线116相互通讯。存储器102可用于存储软件程序以及模块,如本专利技术实施例中的文件下载方法及装置对应的程序指令/模块,处理器106通过运行存储在存储器102内的软件程序以及模块,从而执行各种功能应用以及数据处理,如本专利技术实施例提供的文件下载方法。存储器102可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。处理器106以及其他可能的组件对存储器102的访问可在存储控制器104的控制下进行。外设接口108将各种输入/输入装置耦合至处理器106以及存储器102。在一些实施例中,外设接口108,处理器106以及存储控制器104可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。射频模块110用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。音频模块112向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。触控屏幕114在终端设备100与用户之间同时提供一个输出及输入界面。具体地,触控屏幕114向用户显示视频输出,这些视频输出的内容可包括文字、图形、视频及其任意组合。可以理解,图1所示的结构仅为示意,终端设备100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。于本专利技术实施例中,终端设备100中安装有客户端,该客户端可以是浏览器也可以是第三方应用软件,与服务器(Server)端相对应,为用户提供服本文档来自技高网...
文件下载方法、装置及终端设备

【技术保护点】
一种文件下载方法,其特征在于,所述方法包括:根据目标下载文件的信息,启动多个分段下载线程,分别下载所述目标下载文件的多个分段文件;当所述多个分段下载线程中的一个分段下载线程完成下载任务时,将剩余分段下载线程中未下载内容最多的分段下载线程或预计剩余下载时间最长的分段下载线程作为待协助分段下载线程;按照预定比例截取所述待协助分段下载线程中未下载内容作为尾部片段;启动所述已完成下载任务的分段下载线程下载所述尾部片段。

【技术特征摘要】
1.一种文件下载方法,其特征在于,所述方法包括:根据目标下载文件的信息,启动多个分段下载线程,分别下载所述目标下载文件的多个分段文件;当所述多个分段下载线程中的一个分段下载线程完成下载任务时,将剩余分段下载线程中未下载内容最多的分段下载线程或预计剩余下载时间最长的分段下载线程作为待协助分段下载线程;按照预定比例截取所述待协助分段下载线程中未下载内容作为尾部片段;启动所述已完成下载任务的分段下载线程下载所述尾部片段。2.如权利要求1所述的方法,其特征在于,所述根据目标下载文件的信息,启动多个分段下载线程,分别下载所述目标下载文件的多个分段文件,包括:根据目标下载文件的信息,获取所述目标下载文件的文件大小;对所述目标下载文件进行文件分段处理,获得所述目标下载文件的多个分段文件;根据分段文件的数量分配多个分段下载线程;启动所述多个分配下载线程分别下载所述多个分段文件。3.如权利要求1所述的方法,其特征在于,所述按照预定比例截取所述待协助分段下载线程中未下载内容作为尾部片段之前,还包括:判断待协助分段下载线程未下载内容的数据量是否小于预设阈值,如果是,则直接由所述待协助分段下载线程下载未下载内容,否则,执行所述按照预定比例截取所述待协助分段下载线程中未下载内容。4.如权利要求1所述的方法,其特征在于,所述将剩余分段下载线程中未下载内容最多的分段下载线程或预计剩余下载时间最长的分段下载线程作为待协助分段下载线程之前,还包括:监听所有分段下载线程的下载状态以及下载中的分段文件的大小变化;判断是否有分段下载线程已完成下载任务;如果有分段下载线程已完成下载任务,则判断是否所有分段下载线程均已完成下载任务,如果没有完成,则执行将剩余分段下载线程中未下载内容最多的分段下载线程或预计剩余下载时间最长的分段下载线程作为待协助分段下载线程的步骤;如果没有分段下载线程已完成下载任务,返回监听的步骤。5.如权利要求1所述的方法,其特征在于,所述按照预定比例截取所述待协助分段下载线程中未下载内容作为尾部片段,包括:将所述待协助分段下载线程未下载内容按照二分法分为...

【专利技术属性】
技术研发人员:张志毅
申请(专利权)人:广州优视网络科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1