内蒙古科技大学:《Java编程》课程教学课件(PPT讲稿)第9章 多线程

第9章多线程
第9章 多线程

9.1进程的概念 9.2多进程的概念 9.3线程的概念 9.4主线程 9.5线程调度 9.6线程状态 9.7实现线程的两种编程方法 9.8守护线程 9.9线程同步
9.1 进程的概念 9.2 多进程的概念 9.3 线程的概念 9.4 主线程 9.5 线程调度 9.6 线程状态 9.7 实现线程的两种编程方法 9.8 守护线程 9.9 线程同步

9.1进程的概念 程序是一个静态对象 什么叫进程?程序和进程的区别是什么 静态? 进程是一个动态的过程 动态?
什么叫进程?程序和进程的区别是什么 程序是一个静态对象 进程是一个动态的过程 静态? 动态? 9.1 进程的概念

9.1进程的概念 程序是一个静态对象 程序是为完成特定任务、用某种语言编写的一组指令的 集合。指一段静态的代码。 进程是程序的一次动态执行过程,是系统进行调度和资 源分配的一个独立单位。 它对应了从代码加载、执行至执行完毕的一个完整过程, 这个过程也是进程本身从产生、发展至消亡的过程。 爨香餐谁餐夺婆覆分配一段内存空间,包括:代码、 进程是一个动态的过程
n 程序是为完成特定任务、用某种语言编写的一组指令的 集合。指一段静态的代码。 n 进程是程序的一次动态执行过程,是系统进行调度和资 源分配的一个独立单位。 它对应了从代码加载、执行至执行完毕的一个完整过程, 这个过程也是进程本身从产生、发展至消亡的过程。 操作系统为每个进程分配一段内存空间,包括:代码、 数据以及堆栈等资源。 程序是一个静态对象 进程是一个动态的过程 9.1 进程的概念

9.2多进程的概念 多进程系统是指:多个程序同时运行 一个CPU上同时运行3个程序 运行1个QQ程序 是如何运行的? 运行1个音乐播放器 运行1个浏览器 并发运行: 宏观上:同时运行 3个程序同时运行。 微观上:分时运行
9.2 多进程的概念 多进程系统是指:多个程序同时运行 运行1个QQ程序 运行1个音乐播放器 运行1个浏览器 3个程序同时运行。 一个CPU上同时运行3个程序 是如何运行的? 并发运行: 宏观上:同时运行 微观上:分时运行

9.2多进程的概念 CPU时间 1s 2s 3s 4s 5s 运行1个QQ程序 3个运行 中的程 序就是 运行1个音乐 播放器 3个进程 运行1个浏览器 假设在10秒钟内,3个程序都运行了,宏观上我们感觉3个程序同时运行。 但是微观上,3个程序是分时运行的
假设在10秒钟内,3个程序都运行了,宏观上我们感觉3个程序同时运行。 但是微观上,3个程序是分时运行的。 CPU时间 1s 2s 3s 4s 5s . 3个运行 中的程 序就是 3个进程 9.2 多进程的概念

9.3线程的概念 线程是比进程更小的执行单位。 CPU时间 1ms 2ms 3ms 4ms 5ms 线程1:给A发 送一条消息 运行1个 QQ程序 线程2:给B传 送文件 线程3: 跟C视 频聊天 一个进程在其执行过程中,可以产生多个线程,形成多条执行线索,每条 线索,即每个线程也有它自身的产生、存在和消亡的过程。 线程也是一个动态的概念
一个进程在其执行过程中,可以产生多个线程,形成多条执行线索,每条 线索,即每个线程也有它自身的产生、存在和消亡的过程。 线程也是一个动态的概念。 CPU时间 1ms 2ms 3ms 4ms 5ms . 运行1个 QQ程序 9.3 线程的概念 线程是比进程更小的执行单位

9.3线程的概念 Java语言的一个重要功能特点就是内置对多 线程的支持,它使得编程人员可以很方便地开发 出具有多线程功能,能同时处理多个任务的功能 强大的应用程序,方便地实现任务的并发处理。 一个线程有它自己的入口和出口,以及一个 顺序执行的序列。 线程不能独立存在,必须存在于进程中,各 线程间共享进程空间的数据
9.3 线程的概念 Java语言的一个重要功能特点就是内置对多 线程的支持,它使得编程人员可以很方便地开发 出具有多线程功能,能同时处理多个任务的功能 强大的应用程序,方便地实现任务的并发处理。 一个线程有它自己的入口和出口,以及一个 顺序执行的序列。 线程不能独立存在,必须存在于进程中,各 线程间共享进程空间的数据

9.3线程的概念 多线程是指同时存在几个执行体,按几条不同的执 行线索共同工作的情况。 传统单线程进程 多线程进程 进程 单线程 多线程
单线程 进程 多线程 传统单线程进程 多线程进程 多线程是指同时存在几个执行体,按几条不同的执 行线索共同工作的情况。 9.3 线程的概念

9.4主线程 每个Java Application程序都有一个隐含的主 线程。当JVM加载代码,发现main方法之后,就 会启动一个线程,这个线程称作“主线程”,该 线程负责执行main方法。 JTestMain.java X Test/src/TestMain.java 2 public class TestMain public static void main(String[]args) System.out.print (1/0); 回Console 23 Kterminated》Te n LJava App1 on]C:\Program Files\Genuitec\Commontbinaryicom.sun java.jdk.wir Exception in th上色ad ma1n java.lang.ArithmeticException:by zero at stMain.java:4 如果main方法中没有创建其他的线程,那么当 main方法执行完最后一个语句,即main方法返回 时,JVM就会结束我们的Java应用程序
每个Java Application 程序都有一个隐含的主 线程。当JVM加载代码,发现main方法之后,就 会启动一个线程,这个线程称作“主线程” ,该 线程负责执行main方法。 如果main方法中没有创建其他的线程,那么当 main方法执行完最后一个语句,即main方法返回 时,JVM就会结束我们的Java应用程序。 9.4 主线程
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 内蒙古科技大学:《Java编程》课程教学课件(PPT讲稿)第11章 网络编程.ppt
- 内蒙古科技大学:《JSP编程》课程教学课件(PPT讲稿)第1章 JSP简介(主讲:张晓琳).ppt
- 内蒙古科技大学:《JSP编程》课程教学课件(PPT讲稿)第3章 JSP内置对象.ppt
- 内蒙古科技大学:《JSP编程》课程教学课件(PPT讲稿)第2章 JSP语法.ppt
- 内蒙古科技大学:《JSP编程》课程教学课件(PPT讲稿)第5章 在JSP中使用数据库.ppt
- 内蒙古科技大学:《JSP编程》课程教学课件(PPT讲稿)第4章 JavaBean.ppt
- 内蒙古科技大学:《JSP编程》课程教学课件(PPT讲稿)第6章 JavaServlet技术.ppt
- 内蒙古科技大学:《JSP编程》课程教学资源(实验指导)实验一 安装与配置JSP环境.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(实验指导)实验二 JSP语法指令标记.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(实验指导)实验四 JSP内置对象.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(实验指导)实验三 JSP语法指令标记.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(实验指导)实验六 JavaBean.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(实验指导)实验五 JSP内置对象.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(实验指导)实验八 连接数据库.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(实验指导)实验七 JSP与Javabean结合.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(实验指导)实验十 分页显示记录.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(实验指导)实验九 数据库编程技术.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(实验指导)实验十二 Servlet会话管理.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(实验指导)实验十一 通过JSP页面调用Servlet.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(实验指导)实验十三 基于会员制的网络广告系统.doc
- 内蒙古科技大学:《Java编程》课程教学课件(PPT讲稿)第8章 图形用户界面.ppt
- 内蒙古科技大学:《Java编程》课程教学课件(PPT讲稿)第10章 数据库连接.ppt
- 内蒙古科技大学:《Java编程》课程教学课件(PPT讲稿)第7章 输入输出流.ppt
- 内蒙古科技大学:《Java编程》课程教学课件(PPT讲稿)第5章 接口与Java API基础.ppt
- 内蒙古科技大学:《Java编程》课程教学课件(PPT讲稿)第6章 异常处理.ppt
- 内蒙古科技大学:《Java编程》课程教学课件(PPT讲稿)第4章 类与对象.ppt
- 内蒙古科技大学:《Java编程》课程教学课件(PPT讲稿)第3章 数组与字符串.ppt
- 内蒙古科技大学:《Java编程》课程教学课件(PPT讲稿)第2章 Java程序设计基础.ppt
- 内蒙古科技大学:《Java编程》课程教学课件(PPT讲稿)第1章 Java入门(任课教师:褚燕华).ppt
- 《数据结构与算法分析》课程教学资源(书籍文献)数据结构与算法分析.pdf
- 《数据结构与算法分析》课程教学课件(PPT讲稿)第七章 图.ppt
- 《数据结构与算法分析》课程教学课件(PPT讲稿)第六章 树与二叉树.ppt
- 《数据结构与算法分析》课程教学课件(PPT讲稿)第五章 数组与广义表.ppt
- 《数据结构与算法分析》课程教学课件(PPT讲稿)第四章 串.ppt
- 《数据结构与算法分析》课程教学课件(PPT讲稿)第三章 栈和队列.ppt
- 《数据结构与算法分析》课程教学课件(PPT讲稿)第二章 线性表.ppt
- 《数据结构与算法分析》课程教学课件(PPT讲稿)第一章 java描述.ppt
- 《数据结构与算法分析》课程教学课件(PPT讲稿)前言(JAVA).ppt
- 山东理工大学:《计算机算法设计与分析》课程教学课件(PPT讲稿)第六章 分支限界法 Branch-and-Bound Algorithm.ppt
- 山东理工大学:《计算机算法设计与分析》课程教学课件(PPT讲稿)第五章 回溯算法 Backtrack Algorithm.ppt