Java如何获得运行线程的优先级?
在Java编程中,如何获得运行线程的优先级?
以下示例使用setPriority()
方法打印正在运行的线程的优先级。
package com.yiibai;
public class GettingThreadPriority extends Thread {
private int countDown = 5;
private volatile double d = 0;
public GettingThreadPriority(int priority) {
setPriority(priority);
start();
}
public String toString() {
return super.toString() + ": " + countDown;
}
public void run() {
while (true) {
for (int i = 1; i < 100000; i++)
d = d + (Math.PI + Math.E) / (double) i;
System.out.println(this);
if (--countDown == 0)
return;
}
}
public static void main(String[] args) {
new GettingThreadPriority(Thread.MAX_PRIORITY);
for (int i = 0; i < 5; i++) {
new GettingThreadPriority(Thread.MIN_PRIORITY);
}
}
}
上述代码示例将产生以下结果 -
Thread[Thread-0,10,main]: 5
Thread[Thread-3,1,main]: 5
Thread[Thread-0,10,main]: 4
Thread[Thread-2,1,main]: 5
Thread[Thread-3,1,main]: 4
Thread[Thread-0,10,main]: 3
Thread[Thread-0,10,main]: 2
Thread[Thread-2,1,main]: 4
Thread[Thread-3,1,main]: 3
Thread[Thread-0,10,main]: 1
Thread[Thread-2,1,main]: 3
Thread[Thread-3,1,main]: 2
Thread[Thread-1,1,main]: 5
Thread[Thread-4,1,main]: 5
Thread[Thread-2,1,main]: 2
Thread[Thread-3,1,main]: 1
Thread[Thread-1,1,main]: 4
Thread[Thread-2,1,main]: 1
Thread[Thread-4,1,main]: 4
Thread[Thread-5,1,main]: 5
Thread[Thread-1,1,main]: 3
Thread[Thread-1,1,main]: 2
Thread[Thread-4,1,main]: 3
Thread[Thread-5,1,main]: 4
Thread[Thread-1,1,main]: 1
Thread[Thread-4,1,main]: 2
Thread[Thread-5,1,main]: 3
Thread[Thread-4,1,main]: 1
Thread[Thread-5,1,main]: 2
Thread[Thread-5,1,main]: 1
Java如何获得运行线程的优先级?的更多相关文章
- java 22 - 6 多线程之线程调度和设置线程的优先级
线程调度 假如我们的计算机只有一个 CPU,那么 CPU 在某一个时刻只能执行一条指令,线程只有得到 CPU时间片,也就是使用权,才可以执行指令. 那么Java是如何对线程进行调用的呢? 线程有两种调 ...
- java笔记--查看和修改线程的优先级
查看和修改线程的优先级 java中每一个线程都有优先级属性,在默认情况下,新建的线程的优先级与创建该线程的线程优先级相同.每当线程调度器选择要运行的线程时,通常选择优先级较高的线程. 注:线程的优先级 ...
- Android(java)学习笔记63:线程的优先级
1. Java线程的优先级从1到10级别,值越大优先级越高线程默认优先级是5.值越大优先级越高 (1) 继承自Thread类创建线程类: package cn.itcast_04; public cl ...
- Java 并发 线程的优先级
Java 并发 线程的优先级 @author ixenos 低优先级线程的执行时刻 1.在任意时刻,当有多个线程处于可运行状态时,运行系统总是挑选一个优先级最高的线程执行,只有当线程停止.退出或者由于 ...
- JAVA之旅(十五)——多线程的生产者和消费者,停止线程,守护线程,线程的优先级,setPriority设置优先级,yield临时停止
JAVA之旅(十五)--多线程的生产者和消费者,停止线程,守护线程,线程的优先级,setPriority设置优先级,yield临时停止 我们接着多线程讲 一.生产者和消费者 什么是生产者和消费者?我们 ...
- Java并发编程之线程生命周期、守护线程、优先级、关闭和join、sleep、yield、interrupt
Java并发编程中,其中一个难点是对线程生命周期的理解,和多种线程控制方法.线程沟通方法的灵活运用.这些方法和概念之间彼此联系紧密,共同构成了Java并发编程基石之一. Java线程的生命周期 Jav ...
- java 多线程4: java线程的优先级
Java线程的优先级取值范围是1 (Thread.MIN_PRIORITY ) 到 10 (Thread.MAX_PRIORITY ).如果没有设置, 线程默认的优先级是NORM_PRIORITY.这 ...
- Android(java)学习笔记3:线程的优先级
1. Java线程的优先级从1到10级别,值越大优先级越高线程默认优先级是5.值越大优先级越高 (1) 继承自Thread类创建线程类: package cn.itcast_04; public cl ...
- Java多线程系列 基础篇03 线程的优先级和守护线程
1. 线程优先级 现代操作系统中基本上使用时间分片的方式调度线程,通过设置线程优先级,使优先级高的线程获得时间片的次数多于优先级低的线程. 在java 线程中,通过一个整形变量prority来控制优先 ...
随机推荐
- RDD PAPER
https://cs.stanford.edu/~matei/ https://www2.eecs.berkeley.edu/Pubs/TechRpts/2014/EECS-2014-12.pdf h ...
- windows下通过Chocolatey安装或升级node.js
以管理员身份运行windows PowerShell并安装Chocolatey 我的机器是windows10,可以在开始菜单->所有应用->W栏中找到Window PowerShell并运 ...
- 设置Chrome忽略网站证书错误
本人在XP下使用Chrome.总是莫名其妙的提示整数错误,一部分https网站无法直接访问.网上找了下,把解决思路记录下来. 解决这个问题很简单,只需要修改你平时用来启动Chrome的快捷方式就可以忽 ...
- 好用的vim插件
# 好用的vim插件 ### 简介------------------------------ 记录vim好用的插件 ### vimcdoc vim中文帮助文档-------------------- ...
- 基于jQuery仿迅雷影音官网幻灯片特效
分享一款基于jQuery仿迅雷影音官网幻灯片特效迅.雷影音官网jQuery幻灯片特效是一款带左右箭头,索引按钮切换的jQuery幻灯片代码.效果图如下: 在线预览 源码下载 实现的代码. html ...
- java基础篇---I/O技术(一)
对于任何程序设计语言而言,输入输出(I/O)系统都是比较复杂的而且还是比较核心的.在java.io.包中提供了相关的API. java中流的概念划分 流的方向: 输入流:数据源到程序(inputStr ...
- error "OPatch cannot find a valid oraInst.loc file to locate Central Inventory
Error tersebut terjadi ketika akan menjalankan command opatch lsinventory untuk mengetahui patch yan ...
- Android 底部菜单固定到底部
今天搞了很久的一个问题,导航菜单没有固定到底部,因为上面是ListView,可是没内容,于是就浮动上去了. 效果如下: 这里采用的是一个碎片,代码是: <LinearLayout xmlns:a ...
- mybatis拦截器实现分页功能的示例讲解
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import jav ...
- js如何获取到本周的第一天和最后一天,本月的第一天和最后一天以及本季度的第一天和最后一天
1.首先来一个自己公司项目的源码: 项目需求描述: 从20150712日开始, , 需求①:根据当前时间返回每一周 .周一~周日的日期(需返回2种格式 格式1:7月13日,格式2:2015-07-13 ...