11.5-全栈Java笔记:线程基本信息和优先级别
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了11.5-全栈Java笔记:线程基本信息和优先级别相关的知识,希望对你有一定的参考价值。
获取线程基本信息的方法
表 线程的常用方法 | |
方法 | 功能 |
isAlive() | 判断线程是否还“活”着,即线程是否还未终止。 |
getPriority() | 获得线程的优先级数值 |
setPriority() | 设置线程的优先级数值 |
setName() | 给线程一个名字 |
getName() | 取得线程的名字 |
currentThread() | 取得当前正在运行的线程对象,也就是取得自己本身 |
【示例1】线程的常用方法举例一
public class ThreadTest3 { public static void main(String[] argc) throws Exception { Runnable r = new Thread6(); Thread t = new Thread(r, "Name test"); t.start(); System.out.println("name is: " + t.getName()); Thread.currentThread().sleep(5000); System.out.println(t.isAlive()); System.out.println("over!"); } } class Thread6 implements Runnable { public void run() { for (int i = 0; i < 100; i++) System.out.println(i); } } |
线程的优先级
1.处于就绪状态的线程,会形“就绪队列”等待JVM来挑选。 JVM按照线程的优先级决定应调度哪个线程来执行。
2.线程的优先级用数字表示,范围从1到10。一个线程的缺省优先级是5
3.使用下述方法获得或设置线程对象的优先级。
int getPriority();
void setPriority(int newPriority);
注意:优先级低只是意味着获得调度的概率低。并不是绝对先调用优先级高后调用优先级低的线程。
【示例2】线程的优先级举例二
public class ThreadTest4 { public static void main(String[] args) { Thread t1 = new Thread(new Thread7(), "t1"); Thread t2 = new Thread(new Thread7(), "t2"); t1.setPriority(1); t2.setPriority(10); t1.start(); t2.start(); } } class Thread7 extends Thread { public void run() { for (int i = 0; i < 20; i++) { System.out.println(Thread.currentThread().getName() + ": " + i); // yield(); } } } |
「全栈Java笔记」是一部能帮大家从零到一成长为全栈Java工程师系列笔记。笔者江湖人称 Mr. G,10年Java研发经验,曾在神州数码、航天院某所研发中心从事软件设计及研发工作,从小白逐渐做到工程师、高级工程师、架构师。精通Java平台软件开发,精通JAVAEE,熟悉各种流行开发框架。
笔记包含从浅入深的六大部分:
A-Java入门阶段
B-数据库从入门到精通
C-手刃移动前端和Web前端
D-J2EE从了解到实战
E-Java高级框架精解
F-Linux和Hadoop
本文出自 “12931675” 博客,请务必保留此出处http://12941675.blog.51cto.com/12931675/1945762
以上是关于11.5-全栈Java笔记:线程基本信息和优先级别的主要内容,如果未能解决你的问题,请参考以下文章