下载此文档

java线程.ppt


文档分类:IT计算机 | 页数:约29页 举报非法文档有奖
1/29
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/29 下载此文档
文档列表 文档介绍
Java语言程序设计
1
第13章 线程
线程的概念
线程的使用
两种方式
多线程的互斥与同步
synchronized
wait()/notifyAll()/notify()
2
(Process)
程序(Program)的一次动态执行过程, 占用特定的地址空间
进程是存储器、外设等资源的分配单位。也是处理器的调度对象。
多任务(Multitasking)操作系统
多任务是指在系统中可以同时运行多个程序
如果只有一个处理器,在每一时刻只有一个进程的一条指令被执行。可以使这些任务交替执行,由于间隔的时间短,这些程序看上去好像在同时运行。
进程的查看
Windows系统: Ctrl+Alt+Del
Unix系统: ps or top
线程的概念
3
(Thread)
线程是进程中一个“单一的连续控制流程”执行路径
一个进程可拥有多个并行的(concurrent)线程
一个进程中的线程共享相同的内存单元/内存地址空间可以访问相同的变量和对象,而且它们从同一堆中分配对象通信、数据交换、同步操作
轻量级进程(lightweight process)
多进程
每个进程只有
一个线程
单进程
多线程
线程的概念
4
线程的概念
进程与线程的关系
一个进程中又可以包含一个或多个线程
一个线程就是一个程序内部的一条线索
,就需要产生多个线程,并指定每个线程上所要运行的程序代码段,这就是多线程。
多线程意味着一个程序的多行语句同时执行,但不等价多次启动一个程序
5
线程的概念
Java语言中的线程 (Thread)
大多数现代的操作系统都支持线程
第一个在语言本身中显性地包含线程的主流编程语言,它没有把线程化看作是底层操作系统的工具
每个 Java 程序都至少有一个线程—主线程
当一个 Java 程序启动时,JVM 会创建主线程,并在该线程中调用程序的main()方法
JVM还创建了其它线程,如垃圾收集(garbage collection)
6
线程的使用
线程体

封装了线程的行为,它是一个具体的类。
要创建线程,必须定义一个Thread类的子类,在该子类是重写run()方法,即定义线程所需完成的工作。
每个线程都是通过某个特定对象的方法run()来完成其操作的,方法run()称为线程体
通常run方法是一个循环
7
线程的状态
一个线程对象从创建、启动、运行、终止,直到线程对象被java虚拟机所释放,其生命周期处于各种不同的状态
创建状态
可运行状态
不可运行状态
死亡状态
start()
new Thread()
stop()
stop()
stop()
run()
sleep()
suspend()
wait()
阻塞
8
线程的状态
非法状态处理
线程创建只有调用start()、stop()方法,若调用其它方法将会引起非法状态处理(IllegalThreadStateException)
isAlive()方法
在Thread类的程序接口中提供了isAlive()方法。如果线程被启动且未被终止,那么isAlive()将返回true
线程的启动是通过Thread子类的start()方法来实现,而start()方法启动后,它又引用Thread子类的run()方法来启动线程
线程的start()方法调用后,该线程即处于就绪状态,这时,它将和主线程一起调度,有可能在任一时刻进入运行状态,这是由系统决定的。
9
线程创建的两种方式
继承Thread:
, 重写run()方法
实现接口:

Runnable接口的唯一方法
public void run()
线程体的构造
我们的任务:让程序中的两个线程交替执行
10

java线程 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数29
  • 收藏数0 收藏
  • 顶次数0
  • 上传人rovend
  • 文件大小174 KB
  • 时间2021-08-09
最近更新