计算机通常只有一个 CPU,在任意时刻只能执行一条机器指令,每个线程只有获得

CPU 的使用权才能执行指令.所谓多线程的并发运行,其实是指从宏观上看,各个线

程轮流获得 CPU 的使用权,分别执行各自的任务.在运行池中,会有多个处于就绪状

态的线程在等待 CPU,JAVA 虚拟机的一项任务就是负责线程的调度,线程调度是指

按照特定机制为多个线程分配 CPU 的使用权.

有两种调度模型:分时调度模型和抢占式调度模型。

分时调度模型是指让所有的线程轮流获得 cpu 的使用权,并且平均分配每个线程占

用的 CPU 的时间片这个也比较好理解。

java 虚拟机采用抢占式调度模型,是指优先让可运行池中优先级高的线程占用

CPU,如果可运行池中的线程优先级相同,那么就随机选择一个线程,使其占用

CPU。处于运行状态的线程会一直运行,直至它不得不放弃 CPU。

最新文章

  1. SQL入门语句之运算符
  2. problem during schema create,statement create sequence act_evt_log_seq
  3. javascript总结
  4. 贪心 Codeforces Round #289 (Div. 2, ACM ICPC Rules) B. Painting Pebbles
  5. ubuntu自带的gedit编辑器添加Markdown预览插件
  6. 怎么删除远程登录连接的ip
  7. ORACLE表建立自增列
  8. JPA 系列教程13-复合主键-@EmbeddedId+@Embeddable
  9. 脚本之家 前端jQuery js 学习 网站
  10. win10ssh连接ubuntu服务器并本地绘图
  11. 如何用impress.js写有逼格的ppt
  12. js-ES6学习笔记-Class(3)
  13. web.xml配置遇到的问题
  14. INSERT CLAUSE
  15. 随身Wifi+win7 搭建http代理 域名劫持 抓包 内容篡改实验环境
  16. Android Fragment解析(上)
  17. C# 调用键盘
  18. dedecms 去掉栏目页的预览功能
  19. poj 1041(欧拉回路+输出字典序最小路径)
  20. Python 1 数据类型的操作

热门文章

  1. Owin Katana 的分析介绍
  2. 力扣算法经典第一题——两数之和(Java两种方式实现)
  3. 学习Spring5必知必会(4)~使用注解配置、使用java代码配置
  4. Spark学习记录
  5. 移动BI应该怎么规划?每一个数据产品经理必看
  6. Django框架表关系外键-多对多外键(增删改查)-正反向的概率-多表查询(子查询与联表查询)
  7. 基于Redis分布式BitMap的应用
  8. 【C#TAP 异步编程】异步接口 OOP
  9. PostgreSQL-PL/pgSQL控制结构
  10. c# 表格控件SourceGrid使用总结