JAVA程序设计基础8_第1页
JAVA程序设计基础8_第2页
JAVA程序设计基础8_第3页
JAVA程序设计基础8_第4页
JAVA程序设计基础8_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第8章 多线程,8.1 线 程 概 述 8.2 多线程设计 8.3 线程同步与死锁,8.1 线 程 概 述,8.1.1 程序、进程、线程和多线程 程序是由若干条语句组成的语句序列,是一段静态代码。 进程是程序的一次动态执行过程。 线程包含了一个计算机执行传统程序时所做的每一件事情。 多线程是指同一个应用程序中有多个顺序流同时执行。,8.1.2 线程状态和生命周期 1新建状态 2就绪状态 3运行状态 4阻塞状态 5消亡状态,8.1.3 线程优先级和线程调度 在java语言中,线程的优先级是用数字来表示的,范围为110,如设置某线程优先级为5。另外thread类提供3个有关线程优先级的静态属性:

2、norm_priority:代表普通优先级、默认优先级,缺省为5 min_priority:代表最低优先级,通常为1 max_priority:代表最高优先级,通常为10,对于一个新建线程,系统会遵循如下的原则为其指定优先级: (1)继承创建它的父线程的优先级。 (2)通过调用thread类的setpriority(int a)方法来设置线程的优先级。,当一个在就绪队列中排队的线程获得cpu资源而转入运行状态后,则称这个线程被调度。线程的调度遵循优先级基础上的抢先策略。抢先策略是指如下几个方面。 (1)若一个比当前活动线程优先级更高的线程进入就绪状态时,则停止当前活动线程的执行,当前活动线程转入阻塞状态,插入就绪队列中重新等待调度,而优先级高的线程转入运行状态,成为活动线程。,(2)若一个比当前活动线程优先级低的线程进入就绪状态时,则当前活动线程不停止继续执行,刚进入就绪状态的线程在就绪队列等待调度。 (3)若一个与当前活动线程优先级相同的线程进入就绪状态时,则遵循“先到先服务”原则。,8.2 多线程设计,8.2.1 继承thread类 8.2.2 用实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论