好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

Java 程序设计 教学课件 ppt 作者 王秀红 李兴福 王新春 第10章.ppt

7页
  • 卖家[上传人]:E****
  • 文档编号:89395589
  • 上传时间:2019-05-24
  • 文档格式:PPT
  • 文档大小:97KB
  • / 7 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第10章 多线程,本章要点  多线程的基本概念  多线程的创建  线程调度与线程控制  线程同步 本章难点  线程调度与线程控制  线程同步的实现,10.1 多线程概述,1 多线程的概念 在一个进程内部也可以同时运行多个任务,将一个进程内部运行的每个任务都称为一个线程(thread)线程是进程内部的单一的一个顺序控制流,即程序的一条执行路径,一个进程内可以拥有多个并发执行的线程,我们称之为多线程(Multi-Thread) 2 Java中的多线程 在Java语言中,线程通过java.lang.Thread类进行定义和实现,在该类中封装了虚拟的CPU来进行线程操作控制程序中的线程都是Thread类的实例10.1 多线程概述,3 线程的状态和生命周期 (1) 新建状态 创建了一个线程类的对象后,产生的新线程进入新建状态 (2) 就绪状态 当一个新创建的线程调用start()方法后便进入可执行状态 (3) 执行状态 当处于就绪状态的线程被调度并获得了CPU等执行必需的资源时,便 进入到该状态,即运行了run()方法 (4) 阻塞状态 如果一个线程进入阻塞状态,那么这个线程暂时无法进入就绪队列。

      处于阻塞状态的线程通常需要某些事件才能唤醒 (5) 终止状态 终止状态是线程执行结束的状态,没有任何方法可改变它的状态新建状态,阻塞状态,10.2 多线程的创建,1 Thread类的构造方法 Java中的线程体是由线程类的run()方法定义,在该方法中定义线程的具体行为 2 通过继承Thread类创建线程 (1) 定义一个线程类,它继承线程类Thread并重写其中的run()方法 (2) 创建该子类的对象创建线程 3 通过实现Runnable接口实现线程 public interface Runnable{ void run(); } (1) 定义一个类实现Runnable接口,即在该类中提供run()方法的实现; (2) 把Runnable的一个实例作为参数传递给Thread类的一个构造方法,该实例对象提供线程体run()例10-1,例10-2,10.3 线程的调度与线程控制,1 线程优先级与线程调度策略 优先级越高,越先执行;优先级越低,越晚执行;优先级相同时,则遵循队列的“先进先出”原则 2 线程的基本控制 (1)sleep() 把CPU时间让给优先级比其低的线程 (2)yield() 可以使具有与当前线程相同优先级的线程有运行的机会。

      (3)join() 使当前线程等待调用该方法的线程执行完毕之后再继续 (4)currentThread() 具体是返回当前线程的引用 (5)isAlive() 用isAlive()测试线程以确定线程是否活着 (6)stop() 强行终止线程 (7)suspend()与resume() 在一个线程中调用t.suspend(),将使另一个线程t暂停执行要想恢复线程,必须由其他线程调用t.resume()10.4 线程的同步,1 线程的同步 Java中对共享数据操作的并发控制是采用传统的封锁技术用关键字synchronized为共享资源加锁来解决 2 线程间的通信 当某线程需要在synchronized块中等待共享数据状态改变时,可以调用wait()方法 当其操作完后,只要调用notify()方法就可以通知正在等待的线程重新占有锁并运行例10-3,小结,线程是指程序内部的控制流,多线程就是在一个程序内部同时进行多个操作,每个操作占用一个线程,从而共享系统开销,提高通程序执行速度在Java语言中,线程通过java.lang.Thread类进行定义和实现 一个线程从创建、启动到终止的整个过程称为线程的生命周期,包括五种状态:新建状态、就绪状态、执行状态、阻塞状态、终止状态。

      Thread类是多线程程序设计的基础 Java虚拟机允许一个应用程序可以拥有多个同时执行的线程,优先级越高,越先执行 Java通过Java.lang.object类的方法wait()和notify()实现线程通信。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.