第 12 章线程
本章要点
Java线程的概念模型
Java线程的状态控制
临界资源、对象锁
线程的互斥和同步
线程基本概念
在程序开始投入运行时,系统从程序入口开始按语句的顺序(其中包括顺序、分支和循环)完成相应指令直至结尾,从出口退出,同时整个程序结束;
这样的语句结构称之为进程,或者说进程就是程序在处理机中的一次运行;
一个进程既包括其所要执行的指令,也包括了执行指令所需的任何系统资源,如CPU、内存空间、I/O端口等,不同进程所占用的系统资源相对独立。
目前所流行的操作系统中,大部分都是支持多任务的(如Windows NT/2000,OS/2以及UNIX的各个版本),这实际就是一种多进程的概念——每一个任务就是一个进程;
1 什么是线程?
线程是比进程单位更小的执行单位,在形式上同进程十分相似——都是用一个顺序执行的语句序列来完成特定的功能;
线程没有入口,也没有出口,因此其自身不能自动运行,而必须栖身于某一进程之中,由进程触发执行;
2. 线程的理解
在系统资源的使用上,属于同一进程的所有线程共享该进程的系统资源,但是线程之间切换的速度比进程切换要快得多。
2. 线程的理解
从微观上讲,一个时间里只能有一个作业被执行;
在宏观上可使多个作业被同时执行,即等同于要让多台计算机同时工作,使系统资源特别是CPU的利用率得到提高,从而提高了整个程序的执行效率。
3. 线程的实现
为了达到多线程的效果,Java语言把线程或执行环境(execution context)当作一种拥有自己的程序代码和数据的对CPU的封装单位,由Java虚拟机提供控制;
;
4. 线程的结构
下图是线程运行机制示意图:
CPU
Code
Data
Java基础第12章 PPT课件 来自淘豆网m.daumloan.com转载请标明出处.