多线程下载器,Java 多线程下载项目

1,Java 多线程下载项目就说一个思路吧:1.先得到下载资源的大小2.根据线程数算每个线程需要从多少个字节的地方开始下载3.创建线程发送请求,进行指定字节信息的下载.
2,子线程下载是什么子线程是进程的一部分 。通俗的讲 。你吃饭 。可以用右手抓东西吃,同时左手也可以抓东西吃 。这里,吃饭是进程,右手抓东西吃是线程,左手抓东西吃也是线程 。也就是完成一件事 , 我们可以同时分成几步完成,这样提高效率 。
3 , 什么叫多线程下载啊不明白谁清楚点告诉我线程是程序中一个单一的顺序控制流程.在单个程序中同时运行多个线程完成不同的工作,称为多线程. 正常的IE页面文件下载与上传都只有一个线程,有些软件可以实现多线程文件传输,就好象在传输文件的时候,多开了几条线路,不过次种方法会挤占其他用户的线程,占领服务器带宽资源,所以一般的小规模网站为了保证其资源的可用性,往往不允许用户使用多线程传输打个比方!现在有2台电脑!一台是作为服务器一台就是你使用的机器 。你要在服务器上下载一个文件 。而这个文件是10M那么单线程就是把这个文件作为一个整体来下载 。应为它是把这10分成若干份 。一份一份来下载相对速度 。。。相对而言慢了点··如果是多线程原理同上 。。。只是由多个现成把这10分几条路线拆分这些东西 。到你电脑时在进行组合成为你想下载10M文件 。。。多线程在很多软件都有用 。不过我不在举例说明怎么用了【多线程下载器,Java 多线程下载项目】
4 , 多线程下载是什么意思线程可以理解为下载的通道,一个线程就是一个文件的下载通道,多线程也就是同时开起好几个下载通道.当服务器提供下载服务时,使用下载者是共享带宽的,在优先级相同的情况下,总服务器会对总下载线程进行平均分配.不难理解,如果你线程多的话,那下载的越快.现流行的下载软件都支持多线程.. 注:实现多线程的条件是服务器支持,不支持的话……就用"用代理下载" 补充:多线程下载的原理是这样的:通常服务器同时与多个用户连接 , 用户之间共享带宽 。如果N个用户的优先级都相同,那么每个用户连接到该服务器上的实际带宽就是服务器带宽的N分之一 。可以想象,如果用户数目较多,则每个用户只能占有可怜的一点带宽,下载将会是个漫长的过程 。如果你通过多个线程同时与服务器连接,那么你就可以榨取到较高的带宽了 。例如原来有10个用户都通过单一线程与服务器相连,服务器的总带宽假设为56Kbps,则每个用户(每个线程)分到的带宽是5.6Kbps,即0.7K字节/秒 。如果你同时打开两个线程与服务器连接 , 那么共有11个线程与服务器连接,而你获得的带宽将是56/11*2=10.2Kbps,约1.27K字节/秒,将近原来的两倍 。你同时打开的线程越多 , 你所获取的带宽就越大(原来是这样,以后每次我都通过1K个线程连接:P) 。当然 , 这种情况下占用的机器资源也越多 。有些号称“疯狂下载”的下载工具甚至可以同时打开100个线程连接服务器 。上述下载方式当然都支持多线程下载,可以自行进行设置.

    推荐阅读