下载此文档

java课件第七章JAVA线程-精.ppt


文档分类:IT计算机 | 页数:约45页 举报非法文档有奖
1/45
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/45 下载此文档
文档列表 文档介绍
第7章多线程
多线程基本概念
创建线程的方式
线程的挂起与唤醒
多线程问题
小结
1
多线程基本概念
文件
输入输出装置
各种系统资源
数据区段
程序区段
只有一个地方在执行
文件
输入输出装置
各种系统资源
数据区段
程序区段
同时有数个地方在执行
传统的进程
多线程的任务
2
多线程基本概念
多线程的优势:
减轻编写交互频繁、涉及面多的程序的困难.
程序的吞吐量会得到改善.
由多个处理器的系统,可以并发运行不同的线程.(否则,任何时刻只有一个线程在运行)
3
多线程基本概念
线程与进程的区别:
多个进程的内部数据和状态都是完全独立的,而多线程是共享一块内存空间和一组系统资源,有可能互相影响.
线程本身的数据通常只有寄存器数据,以及一个程序执行时使用的堆栈,所以线程的切换比进程切换的负担要小。
4
多线程基本概念
、监视器和条件变量的技术.
虽然Macintosh,Windows NT,Windows 9等操作系统支持多线程,但若要用C或C++编写多线程程序是十分困难的,因为它们对数据同步的支持不充分.
5
创建线程的方式
1. public class mythread extends Applet implements Runnable
(小应用或已经是某个类的子类时)
2. 继承类Thread
public class mythread extends Thread
3. 上述两种方法中都可用类Thread产生线程的对象 Thread newthread;
4. 创建并启动线程
newthread=new Thread(this);
();
6
创建线程的方式
5. run方法是运行线程的主体,启动线程时,由java直接调用 public void run()
,由小应用程序的stop调用线程的stop ()
7 sleep方法的作用,暂停线程的执行,让其它线程得到机会,sleep要丢出异常,必须抓住.
Try{sleep(100)}catch(InterruptedException e){}
例:小应用程序中不用Runnable接口仍然可以使用线程(不调用主类的方法和调用主类的方法)
7
import .*;
public class thread extends Applet
{ mythread t1=new mythread();
public init()
{ ();}
class mythread extends Thread
{ public void run()
{ for (int i=0;i<4;i++) ( “”+i);
{ try{sleep(400);
} catch(InteruptedException e){ }
}
}
创建线程的方式
8
创建线程的方式
public class mainclass extends Applet
{ C t1=new C(this);
public void init() { ();}
public void paint(Graphics g)
{ ("Hello,java",10,50);}}
class C extends Thread
{ mainclass a;
C(mainclass b)
{ a=b; }
public void run()
{ while(true){ ();
try{sleep(400);}
catch(InterruptedException e){} }}
9
创建线程的方式

isAlive :判断线程目前是否正在执行状态中
if(()) ();
resume:要求被暂停得线程继续执行
suspend:暂停线程的执行
join:等待线程执行完毕
();被等待的那个线程不结束,当前线程就一直等待.
yield:将执行的权力交给其它线程,自己到队列的最后等待.
10

java课件第七章JAVA线程-精 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息