


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
程序中的多线程是并发执行的,但这只是宏观现象。对于大多数计算机而言,CPU只有一个,在某个特定的时刻只能执行一条机器指令,多线程的每个线程只有得到CPU的使用权才能执行指令。Java虚拟机按照特定机制为多个线程分配CPU的使用权就是线程的调度。在计算机中,CPU的调度有两种调度模型,分别是分时调度模型和抢占式调度模型。所谓分时调度模型是指让所有的线程轮流获得CPU的使用权,并且平均分配每个线程占用的CPU的时间片。而抢占式调度模型是指优先让可运行池中优先级高的线程占用CPU,如果可运行池中的线程优先级相同,那么就随机选择一个线程,使其占用CPU。处于运行状态的线程会一直运行,直至它不得不放弃CPU。Java虚拟机采用的就是抢占式调度模型,这种默认的方式在很多时候都是适用的,程序员不需要去关心它,但有时候需要改变这种分配的模式,这时则需要控制CPU的调度。JDK中提供了一系列的方法用于控制线程的调度 线程的优先级在线程中有优先级的机制,线程的优先级用110之间的整数来表示,数字越大则表示优先级越高。除了数字,还可以使用Thread类中提供的三个静态常量表示线程的优先级,他们分别是:MAX_PRIORITY、MIN_PRIORITY、NORM_PRIORIY。 优先级高的线程获得CPU执行的机会越大,而优先级低的线程获得CPU执行的机会越小。在默认情况下,每个线程都有自己的优先级,例如main线程具有普通优先级。线程优先级不是固定不变的,通过调用Thread类的setPriority(int newPriority)方法可以进行改变,setPriority()方法的数newPriority接收110之间的数或者Thread类的三个静态常量,代码如下所示: class MaxPriority implements Runnable publicvoid run() for(int i = 0; i 3; i+) System.out.println(Thread.currentThread().getName() +:优先级为高,循环变量为 + i); class MinPriority implements Runnable publicvoid run() for(int i = 0; i 3; i+) System.out.println(Thread.currentThread().getName() +:优先级为低,循环变量为 + i); public class Example06 publicstatic void main(String args) ThreadminPriority = new Thread(new MinPriority(); ThreadmaxPriority = new Thread(new MaxPriority(); minPriority.setPriority(Thread.MIN_PRIORITY); maxPriority.setPriority(10); minPriority.start(); maxPriority.start(); 运行结果为: Thread-1:优先级为高,循环变量为0 Thread-1:优先级为高,循环变量为1 Thread-1:优先级为高,循环变量为2 Thread-0:优先级为低,循环变量为0 Thread-0:优先级为低,循环变量为1 Thread-0:优先级为低,循环变量为2 在程序中创建了两个线程minPriority和maxPriority,分别将线程的优先级设置为1和10,从运行结果可以看出优先级高的maxPriority线程先运行完毕后优先级低的minPriority线程才开始运行。 虽然Java中提供了10个线程优先级,但这些优先级需要操作系统的支持,然而,不同的操作系统支持的优先
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公司登山自驾游活动方案
- 公司短期旅游活动方案
- 2025年信息技术与产业发展考试试卷及答案
- 2025年心理医生职业伦理考试试卷及答案
- 2025年生命科学基础知识考试试卷及答案
- 2025年健康管理与慢性病防控考试试题及答案
- 2025年科技创新与知识产权管理考试试题及答案
- 2025年家庭教师资格考试试卷及答案
- 2025年护理学课程公共卫生防疫基础知识考试试卷及答案
- 2025年非营利组织发展助理考试试题及答案
- 2024年垂直升降货柜项目可行性研究报告
- 2023年贵州贵州贵安发展集团有限公司招聘考试真题
- 公司责任与权力分配管理制度
- 甘肃电投集团笔试试题
- 部编版四年级语文阅读训练20篇专项专题训练带答案解析
- 大讲堂之 第五讲 大一统与中华民族的初步形成秦汉时期《中华民族共同体概论》
- 2019版CSCO黑色素瘤指南
- 企业数智化能力成熟度模型(EDMM)标准体系解读
- 2024关于深化产业工人队伍建设改革的建议全文解读课件
- SOR-04-014-00 药品受托生产企业审计评估报告模板
- 2024年保健按摩师(初级)职业技能鉴定考试题库(含答案)
评论
0/150
提交评论