欢迎来到天天文库
浏览记录
ID:6675310
大小:579.50 KB
页数:24页
时间:2018-01-21
《2830.多线程下载工具的设计与实现 论文》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、简单多线程下载工具的设计与实现【摘要】随着互联网应用范围不断扩展,网络包含的信息资源日益增多。互联网用户可以通过网络下载所需的数据资源并保存到本地磁盘当中,因此相应的基于网络的下载工具应运而生。随着基于网络的多线程下载技术的出现,如今的下载工具已彻底摆脱了带宽瓶颈的束缚并且向着更为人性化的方向发展。本设计采用Java和多线程技术设计并实现了一个简单多线程下载工具。该工具可对指定的任务进行下载,同时支持断点续传功能。【关键字】java;多线程;断点续传;Swing本文源码索取,请联系qq:目录1.引言31.1开发背景31.2开发意义32.系统分析32.1设计概述32.1.1实现目标3
2、2.1.2开发环境32.2.开发相关技术简介32.2.1Java语言简介32.2.2多线程技术简介42.2.3HTTP1.1协议42.2.4断点续传的技术42.3可行性分析42.3.1技术可行性分析42.3.2经济可行性分析52.3.3操作可行性分析53.概要设计53.1系统结构图53.2功能流程图54.详细设计64.1获取网络资源64.1.1功能说明64.1.2设计说明64.1.3核心代码74.2线程任务分配84.2.1功能说明84.2.2设计说明84.2.3设计流程84.3创建下载任务94.4任务下载104.4.1功能说明104.4.2设计说明104.4.3核心流程114.5事
3、件监听器设计124.5.1功能说明124.5.2设计说明124.6下载控制器设计124.6.1功能说明134.6.2设计说明134.6.3功能流程144.7显示控制器设计154.7.1功能说明154.7.2设计说明154.8断点记录文件设计174.8.1功能说明174.8.2设计说明174.8.3保存断点线程流程图184.9文件操作184.9.1功能说明184.9.2设计说明184.9.3文件操作流程194.10GUI界面设计194.10.1功能说明204.10.2设计说明205.设计问题总结215.1断点设置问题215.2下载速度统计问题226.参考文献资料221.引言1.1开发
4、背景随着互联网应用范围不断扩展,网络包含的信息资源日益增多,互联网用户可以通过网络下载所需的数据资源保存在本地磁盘当中,因此相应的基于网络的下载工具应运而生。对于一个网络下载工具,有两个问题一直阻碍着下载技术的发展:速度和下载后的管理。但是伴随着基于网络的多线程下载技术的出现,如今的下载工具彻底摆脱了这两个问题的束缚并且向着更为人性化的方面发展下去。1.2开发意义本系统是开发一个简单的多线程下载工具,基本实现单资源的多线程任务下载,同时实现断点续传的功能。相对于目前主流下载工具的实现技术,本设计是不能相比的。实现这么一个下载具最大的意义是探索多线程下载的基本原理,综合运用所学的知识
5、,提高自己的动手能力,及查阅资料继续学习的能力。2.系统分析2.1设计概述对于这么一个多线程下载工具的设计,首先就是要设定好实现的目标,确定开发的环境。有个合理的设计目标使得在设计过程中不茫然,思路更清楚。而一个好的开发环境对提高开发的效率起着很重要的作用。2.1.1实现目标实现一个实用的多任务,多线程下载工具。具备以下功能:1、实现一个简洁的易操作的GUI界面2、实现新建下载任务的功能3、下载过程实现多任务,多线程的功能4、实现任务暂停,及恢复下载的功能5、实现停止任务功能2.1.2开发环境Eclipse,windowsxp,jre,jdk2.2.开发相关技术简介本节将对本设计中
6、用到的一些主要技术进行简单的介绍。2.2.1Java语言简介Java是一种简单的、面向对象的、分布式的、解释型的、健壮安全的、结构中立的、可移植的、性能优异、多线程的语言,自1995年SUN推出JAVA语言后,全世界的目光都被这个神奇的语言所吸引。由于Java所具有的以上那些特性,所以我选用JAVA做为本设计的开发语言。2.2.2多线程技术简介线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行。也可以把它理解为代码运行的上下文。所以线程基本上是轻量级的进程,它负责在单个程序里执行多任务。通常由操作系统负责多个线程的调度和执行。在本设计中,多线程的技术用在新建新任务和下
7、载线程上,在系统中我们可以开始多个下载线程下载同一个网络上的资源而互不干扰。它从宏观上看是并行运行的,但对于微观上来说,它是却是串行运行的,线程的运行在操作系统的调度下,各自得到一定的时间片,当某一线程获取到时间片时,它就进入运行状态。各个线程按照一定的协议分别获取时间片。2.2.3HTTP1.1协议HTTP1.1(HypertextTransferProtocolVertion1.1)超文本传输协议-版本1.1。它是用来在Internet上传送超文本的传送协议。它是
此文档下载收益归作者所有