美文网首页Java学习笔记
11.5-全栈Java笔记:线程基本信息和优先级别

11.5-全栈Java笔记:线程基本信息和优先级别

作者: 全栈JAVA笔记 | 来源:发表于2017-07-11 10:51 被阅读26次

获取线程基本信息的方法

表  线程的常用方法

方法

功能

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 

相关文章

  • 11.5-全栈Java笔记:线程基本信息和优先级别

    获取线程基本信息的方法 表线程的常用方法 方法 功能 isAlive() 判断线程是否还“活”着,即线程是否还未终...

  • 技术体系

    一,java核心 java基础,jvm,算法,多线程,设计模式 Java基础:java基础相关,全栈java基础 ...

  • 笔记 34 | java线程之Thread线程优先

    地址 笔记 34 | java线程之Thread线程优先 前言 当我们需要在几个线程中拍个优先执行的顺序时,我们就...

  • Java基础知识学习——线程2

    一、线程的优先级别 线程优先级别的使用范例: run()方法一结束,线程也就结束了。 二、线程同步 synchro...

  • 并发编程

    01 进程和线程 02 并行和并发 03 Java线程 04 栈与栈帧 05 线程上下文切换 06 线程常见方法 ...

  • Java栈与栈上分配

    一. java栈: java栈是一块线程私有的内存空间。如果说,java堆和程序数据密切相关,那么java栈就是和...

  • JVM内存分配策略 和 内存回收策略

    java 内存分配基于两种,堆 和 栈。 1.栈 和 堆 java栈java栈的分配是和线程绑定在一起的,当我们创...

  • java多线程

    Java线程调度和优先级 在各种线程中,Java虚拟机必须实现一个有优先权的,基于优先级的调度程序。每一个线程都会...

  • JVM内存模型

    Java内存模型把Java虚拟机内部划分为线程栈和堆。 Java 内存中堆和栈有什么区别: Stack栈是存放方法...

  • 【多线程】——5.线程的优先级和守护线程

    线程的优先级和守护线程 线程的优先级 java中线程的优先级范围是1-10,默认优先级是5 ,1最低10最高 高优...

网友评论

    本文标题:11.5-全栈Java笔记:线程基本信息和优先级别

    本文链接:https://www.haomeiwen.com/subject/teiphxtx.html