《Java程序设计》课程电子教案(PPT课件讲稿)第13章 多线程

第13章多线程 ava 13.1线程 132创建线程 133线程的状态 134共享资源 13.5习题
第13章 多线程 13.1 线程 13.2 创建线程 13.3 线程的状态 13.4 共享资源 13.5 习题

13.1线程 ava 程序的一次执行过程称为一个进程。进程是 个“自包含”的运行程序,有自己专用的内存 地址。 线程是指一个程序中可以独立运行的片断,是 进程中的一个单一而连续的控制流程 个进程可以包含多个线程,每个线程独立运 行以执行特定的任务,而且同一进程内的多个 线程间共享相同的内存
13.1 线程 程序的一次执行过程称为一个进程。进程是一 个“自包含”的运行程序,有自己专用的内存 地址。 线程是指一个程序中可以独立运行的片断,是 进程中的一个单一而连续的控制流程。 一个进程可以包含多个线程,每个线程独立运 行以执行特定的任务,而且同一进程内的多个 线程间共享相同的内存

13.2创建线程 ava 132.1定义 Thread类的子类 1322实现 Runnable接口
13.2 创建线程 13.2.1 定义Thread类的子类 13.2.2 实现Runnable接口

1321定义 Thread类的子类 Thread run( //在子类中必须覆盖以说明线程自身的具体操作 start( //启动当前线程。它会为线程进行特殊的初始化,然后自动 //调用当前线程的run()方法 例13-1定义 Thread类的子类 源代码 运
13.2.1 定义Thread类的子类 Thread: – run() //在子类中必须覆盖以说明线程自身的具体操作 – start() //启动当前线程。它会为线程进行特殊的初始化,然后自动 //调用当前线程的run()方法 例13-1 定义Thread类的子类 源代码 运 行

132.2实现 Runnab1e接口 实现 Runnable接口,即定义其中惟一方法 run()的具体操作。此后,程序在需要创建 线程时,只需以这个实现了 Runnab1e接口 的类的对象为参数创建 Thread类的对象 例13-2实现 Runnable接口 源代码
13.2.2 实现Runnable接口 实现Runnable接口,即定义其中惟一方法 run()的具体操作。此后,程序在需要创建 线程时,只需以这个实现了Runnable接口 的类的对象为参数创建Thread类的对象。 例13-2 实现Runnable接口 源代码 运 行

133线程的状态 Java yield( CPU时间片到 run()结束 创建 start( stop() 新建 可运 结束 ep( fyAll( suspend( resume() I/O unlock 阻塞
13.3 线程的状态 新建 可运行 阻塞 结束 创建 start() yield() CPU时间片到 sleep() wait() suspend() I/O block ... notify() notifyAll() resume() I/O unlock ... run()结束 stop()

133线程的状态(续) ava 新建状态 可运行状态 阻塞 结束 例13-3线程的状态 源代码 运
13.3 线程的状态(续) 新建状态 可运行状态 阻塞 结束 例13-3 线程的状态 源代码 运 行

13.4共享瓷源 ava 134.1线程同步 1342等待与通知 134.3死锁
13.4 共享资源 13.4.1 线程同步 13.4.2 等待与通知 13.4.3 死锁

13.4.1线程同步 ava 多线程环境下,资源可以共享,因此可能存 在两个或多个线程同时使用某一资源,从而 造成资源冲突的情况 例13-4演示资源冲突 源代码 运
13.4.1 线程同步 多线程环境下,资源可以共享,因此可能存 在两个或多个线程同时使用某一资源,从而 造成资源冲突的情况。 例13-4 演示资源冲突 源代码 运 行

1341线程同步(续) ava 同步机制通过给对象加锁来防止多个线程同 时访问某对象。要实现线程同步,通常需要 将某些方法声明为同步的( synchronized) 当程序调用任意同步方法时,如果该方法不 是类方法,调用该方法的对象便会被锁定, 该对象的所有同步方法都无法再被调用,直 至第1个同步方法执行完毕并解除锁定;如果 该方法是类方法,该方法所属类的所有对象 都会被锁定,从而可以避免类变量被通过该 类的不同对象同时访问
13.4.1 线程同步(续) 同步机制通过给对象加锁来防止多个线程同 时访问某对象。要实现线程同步,通常需要 将某些方法声明为同步的(synchronized)。 当程序调用任意同步方法时,如果该方法不 是类方法,调用该方法的对象便会被锁定, 该对象的所有同步方法都无法再被调用,直 至第1个同步方法执行完毕并解除锁定;如果 该方法是类方法,该方法所属类的所有对象 都会被锁定,从而可以避免类变量被通过该 类的不同对象同时访问
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《Java程序设计》课程电子教案(PPT课件讲稿)第12章 Applet及绘图.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第11章 图形用户界面.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第10章 IO系统.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第9章 异常处理.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第7章 数组.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第8章 集合与泛型.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第6章 基础类.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第5章 继承与多态.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第3章 方法.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第1章 Java语言概述.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第2章 Java语言编程基础.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第4章 类和对象.ppt
- 人民邮电出版社:教育部高职高专规划教材:《计算机网络基础》课程电子教案(PPT课件讲稿)第9章 Internet.ppt
- 人民邮电出版社:教育部高职高专规划教材:《计算机网络基础》课程电子教案(PPT课件讲稿)第8章 网络的互连.ppt
- 人民邮电出版社:教育部高职高专规划教材:《计算机网络基础》课程电子教案(PPT课件讲稿)第7章 网络的计算模式.ppt
- 人民邮电出版社:教育部高职高专规划教材:《计算机网络基础》课程电子教案(PPT课件讲稿)第6章 网络操作系统与网络结构.ppt
- 人民邮电出版社:教育部高职高专规划教材:《计算机网络基础》课程电子教案(PPT课件讲稿)第5章 结构化布线系统.ppt
- 人民邮电出版社:教育部高职高专规划教材:《计算机网络基础》课程电子教案(PPT课件讲稿)第4章 计算机局域网络.ppt
- 人民邮电出版社:教育部高职高专规划教材:《计算机网络基础》课程电子教案(PPT课件讲稿)第3章 计算机网络体系结构.ppt
- 人民邮电出版社:教育部高职高专规划教材:《计算机网络基础》课程电子教案(PPT课件讲稿)第2章 数据通信基础.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第14章 多媒体编程.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第15章 网络编程.ppt
- 西北工业大学:《Internet实用技术》第8章 FrontPage高级应用.ppt
- 西北工业大学:《Internet实用技术》第9章 网络安全与法律.ppt
- 西北工业大学:《Internet实用技术》第10章 计算机网络的分类协议与体系结构.ppt
- 西北工业大学:《Internet实用技术》第11章 局域网与广域网.ppt
- 西北工业大学:《Internet实用技术》复习.ppt
- 西北工业大学:《Internet实用技术》重点内容.ppt
- 莆田高等专科学校:《网络管理基础》课程教学资源(讲义)第八章 WINDOWS NT 网络操作系统.doc
- 莆田高等专科学校:《网络管理基础》课程教学资源(讲义)第二章 LAN组网技术(增补).doc
- 莆田高等专科学校:《网络管理基础》课程教学资源(讲义)第二章 LAN组网技术续.doc
- 莆田高等专科学校:《网络管理基础》课程教学资源(讲义)第六章 NetWare的安装.doc
- 莆田高等专科学校:《网络管理基础》课程教学资源(讲义)第七章 Novell网例行管理与维护.doc
- 莆田高等专科学校:《网络管理基础》课程教学资源(讲义)第三章 Novell用户管理.doc
- 莆田高等专科学校:《网络管理基础》课程教学资源(讲义)第四章 Novell网文件目录管理.doc
- 莆田高等专科学校:《网络管理基础》课程教学资源(讲义)第五章 注册底稿与菜单设计.doc
- 莆田高等专科学校:《网络管理基础》课程教学资源(讲义)第一章 网络技术纵览.doc
- 襄阳职业技术学院:《计算机组装与维护》第三章 主板.ppt
- 襄阳职业技术学院:《计算机组装与维护》第一章 计算机系统概述.ppt
- 襄阳职业技术学院:《计算机组装与维护》第二章 中央处理器.ppt