- 1、本文档共50页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《11. 尚硅谷_佟刚_Java基础_多线程》.pdf
本章内容
线程的概念模型
线程的创建和启动
临界资源、对象锁
线程的互斥和同步
程序、进程与多任务
• 程序 (program )是对数据描述与操作的代码的
集合,是应用程序执行的脚本。
• 进程(process )是程序的一次执行过程 ,是系
统运行程序的基本单位。程序是静态的,进程是
动态的。系统运行一个程序即是一个进程从创建、
运行到消亡的过程。
• 多任务(multi task )在一个系统中可以同时运行
多个程序,即有多个独立运行的任务,每个任务
对应一个进程。
线程
• 线程 (thread ):比进程更小的运行单位,是程序中单个顺
序的流控制。一个进程中可以包含多个线程。
• 简单来讲,线程是一个独立的执行流 ,是进程内部的一个独
立执行单元,相当于一个子程序。
• 一个进程中的所有线程都在该进程的虚拟地址空间中,使用
该进程的全局变量和系统资源。
• 操作系统给每个线程分配不同的CPU时间片,在某一时刻,
CPU只执行一个时间片内的线程,多个时间片中的相应线程
在CPU内轮流执行。
A
Thread
A Program
Two
Thread
A Program
创建多线程
• 每个Java程序启动后,虚拟机将自动创建一个主
线程
• 可以通过以下两种方式自定义线程类:
– 创建java.lang.Thread 类的子类,重写该类的run方法
– 创建java.lang.Runnable 接口的实现类,实现接口中的
run方法
继承 Thread 类
• Thread :代表一个线程类
构造方法 含义
Thread() 创建一个新的线程对象
基于Runnable接口实现类的实例创建一个线程
Thread(Runnable target) 对象
Thread(Runnable t, 基于给定的Runnable接口实现类的实例和指定
String name) 名字创建一个线程对象
Thread(String name) 基于给定的名称创建一个线程对象
Thread 类
• Thread类中的重要方法:
– run方法:包括线程运行时执行的代码,通常在
子类中重写它。
– start方法:启动一个新的线程,然后虚拟机调
用新线程的run方法
Thread 类代码示例
创建多线程
问题 :要定义的线程类已经显式继承了一个
其他的类怎么办?
Runnable 接口
• Runnable 接口中只有一个未实现的 run 方法 ,实
现该接口的类必须重写该方法。
• Runnable 接口与 Thread 类之间的区别
– Runnable 接口必须实现 run 方法 ,而 Thread 类 中的
run 方法是一个空方法,可以不重写
– Runnable 接口的实现类并不是真正的线程类,只是线程
运行的目标类。要想以线程的方
您可能关注的文档
- 《(bk5 ch3.1 changes in general price level)econ9.3》.pdf
- 《(java)课程标准样本》.doc
- 《(NORD)诺德减速机各系列介绍》.ppt
- 《(R8) Steve Jobs Leadership_2016》.pdf
- 《(Unit 3A Good Heart to Lean On)》.doc
- 《(全)SMD贴片型LED的封装》.ppt
- 《(官方标准的一级笔试和口试样题以及答案)PETS Level 1 Sample Tasks》.doc
- 《(样信译文+课后练习答案)Lesson 1》.ppt
- 《(样信译文+课后练习答案)Lesson 2》.ppt
- 《(第二版)全新版大学英语综合教程4__参考答案_Unit_3__Job_Interview》.pdf
文档评论(0)