苏州北大青鸟|电脑人才培训中心『官方网站』

高中生毕业了做什么?高中生学什么好 苏州北大青鸟、苏州北大青鸟学费、苏州北大青鸟地址
ACCP7.0培训-入手最快 JAVA培训—收入最高 .NET培训—就业面最宽 网络营销培训—需求量最大
高中毕业学什么好 大学生找不到工作怎么办 学什么技术有前途(好转行) 初中(中专)毕业学什么好
当前位置: 主页 > 青鸟百科 >

基于Java多线程断点续传功能设计

时间:2012-05-28 16:58来源: 作者: 点击:
随着用户下载需求的增大,用户下载的资源越来越大,下载的过程也就越来越久,这就要求下载软件能够迅速完成对资源的下载,为了提高下载效率的问题,所以本系统采用多线程的方式来实现下载速率的提高。多线程的优点之一是所有线程都可以访问相同的全局变量和共享资源,它提供了程序设计的简捷性与便利性,提高了对信息处理的并发度,但也带来了数据的讹误或线程得不到某一资源而被饿死(即死锁)的可能性。为了避免这些现象的产生,线程在使用共享资源或对象前必须获得一个约束访问同步对象的权力,也就是通过同步的机制来控制这种权力的使用,这就是线程的安全问题。Http协议是互联网中一个非常重要而且应用十分频繁的协议,所以本系统的设计是基于 Http协议的。长期以来,断点续传始终是困扰网虫们的一大难题,眼看着已经下载到99%的软件,却由于突然掉线而前功尽弃的那种沮丧恐怕人人都经历过,于是本系统采用断点续传的方式来设计。
本系统设计的基本目标就是利用编写一个时下流行的基于Http协议的多线程断点续传的程序来研究Java多线程与线程安全的机制。
4.2 系统总体功能结构
通过对多线程断点续传下载软件的需求分析并结合实际情况的分析,本系统由下载分类管理、任务管理、设置管理、系统帮助四个主模块构成。本系统的功能结构图如图示:
其中下载文件的分类模块主要是通过在新建下载任务时候设置下载文件的存储目录甚至新建一个存储目录的方式来实现。
下载任务的管理模块主要有三个子模块组成:新建下载任务模块、批量完成下载任务模块、删除任务模块。
在设置任务的管理模块主要有两个子模块组成:在新建(批量)下载任务的时候进行任务的连接方面的配置模块以及在现在过程中对下载任务的状态进行监视的模块。
在系统帮助模块里主要是包含一些对整个系统的说明,便于用户理解。
5.系统实现
5.1用户界面实现
本下载程序提供两种操作模式:一种是使用命令行参数对下载软件进行操作;另一种方式是通过图形界面对下载软件进行操作。在此对图形界面的实现进行详细介绍。
下载程序的主界面设计使用Eclipse开发主要分成四部分:第一部分是菜单栏,提供功能选项;第二部分是标准按钮栏;第三部分是信息列表框,其中包括下载软件的名称、大小、下载进度、下载速度、剩余时间等下载任务的属性;最后一部分是一个文本框用来监视下载文件时返回的信息,包括下载文件的URL地址、下载文件的长度、以及完成任务的所有线程数和每个线程完成的块大小。在下载过程中上边提到的相关信息都会显示在列表框和文本框中,用户可以方便地监视到下载文件的状况。
菜单栏的设计使用了org.eclipse.jface.action包的action类,JFace中引用了action的概念主要用完成用户动作的代码复用。在这里每一个action都可以用来响应一个用户的动作,比如打印文件、打开文档或是显示对话框。
程序的主界面菜单栏的设计就是对action的复用。首先创建用户动作,包括新建下载任务动作(newTaskAction)、新建批量下载任务动作(batchTaskAction)、删除任务动作(deleteTaskAction)、帮助动作(aboutAction)和退出动作(exitAction),这些都是action。

标签:

(原文标题:基于Java多线程断点续传功能设计

(责任编辑:苏州北大青鸟



相关新闻

  • E-learning云计算机市场份额逐渐扩大
  • 基于WEB的成本管理系统的设计
  • 基于WEB的学生成绩管理系统的设计及
  • 基于WEB的汽车信息网站的设计
  • 基于WEB的信息信息发布系统的设计及
  • 基于WEB的JSP实验室管理系统的设计
  • 基于WEB的企业人事管理系统的设计
  • 基于JSP的商场进销存管理系统的设计
  • 基于JSP的网络交易市场物业管理系统
  • 基于WEB的毕业设计选题系统的设计及
    更多
    分享按钮
    ------分隔线----------------------------
    招生专题