java面向对象程序设计第09章.ppt

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java面向对象程序设计第09章

进程 进程是一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程。进程是存储器、外设等资源的分配单位,也是处理器的调度对象。 线程与多任务 多任务是指在系统中可以同时运行多个程序。可以使这些任务交替执行,由于间隔的时间短,这些程序看上去好像在同时运行。 如果将进程再划分为线程,每个线程轮流占用处理器,可以减少并发控制的时间。 Thread类构造方法 (2)public Thread(Runnable target) (3)public Thread(Runnable target,String name) (7)public Thread(ThreadGroup group,Runnable target,String name) 在Thread类中共定义了7种构造方法,其他6种都是从第七种衍生来的。 实现线程行为的方法 通过对run()方法的调用,就可以实现线程行为。 在Thread中提供的run()方法只是一个供其子类覆盖的方法,而子类方法是由程序员编写的。 改变线程状态的方法 Runnable接口 在Runnable中,只声明了一个方法run(): public void run(); 利用Thread类创建线程 //ThreadApplication.java public class ThreadApplication { public static void main(String args[ ]) { MyThread thread1 = new MyThread(); MyThread thread2 = new MyThread(); thread1.set(1 ,100); thread2.set(2,50); thread1.start(); thread2.start(); } } class MyThread extends Thread { char c; int time; int count = 0; public void set (char _c,int _time) { c = _c; 利用Runnable接口创建线程范例 //ThreadApplication.java public class ThreadApplication { public static void main(String args[ ]) { MyThread thread1 = new MyThread(); MyThread thread2 = new MyThread(); thread1.set(1 ,100); thread2.set(2,50); Thread t1 = new Thread(thread1); Thread t2 = new Thread(thread2); t1.start(); t2.start(); } } class MyThread implements Runnable 线程5状态图 1.创建状态 2.可运行状态 3.运行中状态 4.阻塞状态 5.死亡状态 对线程状态的控制 1 start() 该方法对应于启动操作start()方法,定 义如下: public synchronized void start() 如: Thread aThread = new Thread(); //aThread对象在创建态 aThread.start(); //aThread进入可执行态 2.stop()方法 该方法对应于终止操作,其定义如下: aThread.stop(); //停止aThread线程 3.sleep()方法 该方法对应睡眠操作,其定义如下: (1)public static void sleep(long millis) throws InterruptedException (2)public static void sleep(long millis, int nanos) throws InterruptedException sleep()方法使得当前的线程停止运行,进入阻塞态。 4.yield()方法 该方法对应于放弃操作,其定义如下: public static void yield() yield()方法放弃当前线程的运行,使它进入可运行态,重新排队 5.wait()方法 该方法对应于等待操作,其定义如下: (1)public final void wait(long timeout) throws InterruptedException (2)public final void wa

文档评论(0)

xy88118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档