[发明专利]一种基于多线程的文件上传系统及方法有效

专利信息
申请号: 201410082305.1 申请日: 2014-03-07
公开(公告)号: CN103841196B 公开(公告)日: 2017-05-17
发明(设计)人: 谭曼 申请(专利权)人: 长沙裕邦软件开发有限公司
主分类号: H04L29/08 分类号: H04L29/08;G06F9/50
代理公司: 深圳市君胜知识产权代理事务所(普通合伙)44268 代理人: 王永文,刘文求
地址: 410002 湖南省长沙*** 国省代码: 湖南;43
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 多线程 文件 上传 系统 方法
【权利要求书】:

1.一种基于多线程的文件上传的方法,其特征在于,所述方法包括以下步骤:

S1、获取客户机的配置参数,其中,所述配置参数包括CPU个数cpucount:

S2、获取用户选择需要上传的文件个数filecount;

S3、根据CPU个数cpucount和文件个数filecount,按照预定规则确定所需建立的线程个数n;

S4、把准备上传的文件按文件大小均衡的原则分配给n个线程,即将文件中体积最大的放在所含文件总体积最小的线程中,再将次大的文件放入所含文件总体积次小的线程中,以此类推,n个线程同时工作,直至完成上传;

所述步骤S1中通过读取注册表获取本机CPU的名称和频率,通过Windows API GetSystemInfo获取CPU个数cpucount以及CPU型号;

所述步骤S3中按照预定规则确定所需建立的线程个数n具体包括:

若filecount≥( 2*cpucount + 2 ),则n = 2*cpucount + 2;

若filecount < ( 2*cpucount + 2 ),则n = filecount;

所述步骤S4中把准备上传的文件按文件大小均衡的原则分配给n个线程具体包括:

S41、先按文件大小做升序排列;

S42、把前面n个文件分别分配给n个线程;

S43、然后从文件序列的最后一个开始,把剩余的文件依次分配给当前线程所含文件体积中体积最小的一个线程;

所述文件大小均衡原则还具体包括:

将文件依据所述原则分别放入线程之前或者同时进行升序排序编组,之后进入线程不需要再对比大小而是无停顿进入线程内。

2.根据权利要求1所述的基于多线程的文件上传的方法,其特征在于,所述步骤S43具体包括以下步骤:

S431、比较当前线程所含文件体积的大小,然后,将剩余的文件依次分配给当前线程所含文件体积中体积最小的一个线程;

S432、重复上述步骤直至将所有文件分配完成。

3.根据权利要求1所述的基于多线程的文件上传的方法,其特征在于,所述步骤S43具体包括以下步骤:

S431*、根据所含文件总体积大小对线程由小到大进行升序排序;

S432*、将剩余的文件依次分配给按序排列的线程;

S433*、剩余的文件数量小于线程数,则步骤完毕;剩余的文件数量大于线程数,则重复上述步骤直至将所有文件分配完成。

4.一种基于多线程的文件上传的系统,其特征在于,所述系统包括:

第一获取单元,用于获取客户机的配置参数,其中,所述配置参数包括CPU个数cpucount:

第二获取单元,用于获取用户选择需要上传的文件个数filecount;

确定单元,用于根据CPU个数cpucount和文件个数filecount,按照预定规则确定所需建立的线程个数n;

上传单元,用于把准备上传的文件按文件大小均衡的原则分配给n个线程,即将文件中体积最大的放在所含文件总体积最小的线程中,再将次大的文件放入所含文件总体积次小的线程中,以此类推,n个线程同时工作,直至完成上传;

所述第一获取单元中通过读取注册表获取本机CPU的名称和频率,通过Windows API GetSystemInfo获取CPU个数cpucount以及CPU型号;

所述确定单元中按照预定规则确定所需建立的线程个数n具体包括:

若filecount≥( 2*cpucount + 2 ),则n = 2*cpucount + 2;

若filecount < ( 2*cpucount + 2 ),则n = filecount;

所述上传单元中把准备上传的文件按文件大小均衡的原则分配给n个线程具体包括:

排列子单元,用于先按文件大小做升序排列;

第一分配子单元,用于把前面n个文件分别分配给n个线程;

第二分配子单元,用于然后从文件序列的最后一个开始,把剩余的文件依次分配给当前线程所含文件体积中体积最小的一个线程;

所述文件大小均衡原则还具体包括:

将文件依据所述原则分别放入线程之前或者同时进行升序排序编组,之后进入线程不需要再对比大小而是无停顿进入线程内。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于长沙裕邦软件开发有限公司,未经长沙裕邦软件开发有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410082305.1/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top