【java】3-获取线程引用与线程的属性
创始人
2024-04-17 02:01:38

1.获取线程的引用

在创建一个线程之后,我们很有必要去获取当前线程实例的引用,以便能够观察到线程的一些属性,或是对于当前线程进行一系列的操作

调用Thread类的静态方法currentThread,我们便能拿到当前线程的引用

Thread.currentThread()

通过线程的引用,我们便可以调用当前线程引用的一些方法,获取线程的一些信息

public class Demo11 {public static void main(String[] args) throws InterruptedException {Thread t1 = new Thread(()->{System.out.println(Thread.currentThread().getId());System.out.println(Thread.currentThread().getName());System.out.println(Thread.currentThread().getState());System.out.println(Thread.currentThread().getPriority());System.out.println(Thread.currentThread().isDaemon());System.out.println(Thread.currentThread().isAlive());System.out.println(Thread.currentThread().isInterrupted());});t1.start();Thread.sleep(1000);System.out.println("====================================");Thread t2 = new Thread(()->{System.out.println(Thread.currentThread().getId());System.out.println(Thread.currentThread().getName());System.out.println(Thread.currentThread().getState());System.out.println(Thread.currentThread().getPriority());System.out.println(Thread.currentThread().isDaemon());System.out.println(Thread.currentThread().isAlive());System.out.println(Thread.currentThread().isInterrupted());});t2.start();}
}

运行结果:
在这里插入图片描述

2.获取线程实例属性的一些方法

属性获取属性的方法用途
IDgetId()ID 是线程的唯一标识,不同线程不会重复
名称getName()名称在使用调试工具时候会用到
状态getState()状态表示线程当前所处的一个情况
优先级getPriority()优先级高的线程理论上来说更容易被调度到
是否为后台线程isDaemon()JVM会在一个进程的所有非后台线程结束后,才会结束运行
是否存活isAlive()是否存活,即简单的理解为 run 方法是否运行结束了
是否被中断isInterrupted()判断一个线程是否被中断

相关内容

热门资讯

demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...