古龙武侠小说九月鹰飞:什么叫多线程传输?

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/30 11:26:39
我申请了一个免费邮箱,自带280M的网络U盘,但是规定每次上传、下载东西不得超过10M,有网友就因为采用多线程传输被封了帐号,网络U盘里的贵重的东西就完了。请问什么是多线程传输呢?我应怎样避免采用多线程技术传输呢?

正常的IE页面文件下载与上传都只有一个线程,有些软件可以实现多线程文件传输,就好象在传输文件的时候,多开了几条线路,不过次种方法会挤占其他用户的线程,占领服务器带宽资源,所以一般的小规模网站为了保证其资源的可用性,往往不允许用户使用多线程传输,不使用第三方上传文件,直接在网站给出的页面里通过IE上传的话,就一定是单线程上传,不会被封帐号,另外,网络U盘并不完全可靠,重要文件还是尽量在本地硬盘上进行备份

线程是程序中一个单一的顺序控制流程.在单个程序中同时运行多个线程完成不同的工作,称为多线程.
线程和进程的区别在于,子进程和父进程有不同的代码和数据空间,而多个线程则共享数据空间,每个线程有自己的执行堆栈和程序计数器为其执行上下文.多线程主要是为了节约CPU时间,发挥利用,根据具体情况而定.
线程的周期
新建 就绪 运行 阻塞 死亡
线程调度与优先级
有线程进入了就绪状态,需要有线程调度程序来决定何时执行,根据优先级来调度.
线程组
每个线程都是一个线程组的一个成员,线程组把多个线程集成一个对象,通过线程组可以同时对其中的多个线程进行操作.在生成线程时必须将线程放在指定的线程组,也可以放在缺省的线程组中,缺省的就是生成该线程的线程所在的线程组.一旦一个线程加入了某个线程组,不能被移出这个组.
守护线程
是特殊的线程,一般用于在后台为其他线程提供服务.
isDaemon():判断一个线程是否为守护线程.
set Daemon():设置一个线程为守护线程.
Thread类和Runnable接口
Thread类
类Thread在包java.lang中定义,它的构造方法如下:
public Thread();
public Thread(Rannable target);
public Thread(Rannable target,String name);
public Thread(String name);
public Thread(ThreadGroup group,Rannable target);
public Thread(ThreadGroup group, String name);
主要方法
isActive() 判断是否处于执行状态
Suspend() 暂停执行
reSume 恢复执行
start() 开始执行
Stop() 停止执行
sleep() 睡眠
run() 程序体
yield() 向其他线程退让运行权
线程优先级
Public statuc final int MAX_PRIORITY最高优先级,10
Public statuc final int MIN_PRIORITY最低优先级,1
Public statuc final int NORM_PRIORITY普通优先级,5
Runnable接口
Runnable接口中只定义了一个方法run()作为线程体,
void run()