4.获取和设置线程名称

 

 

获取和设置线程名称

 引言

上一节我们介绍了如何获取正在执行任务的线程,本节将介绍如何获取和设置线程的名称,

首先介绍的是获取线程的名称,

然后介绍的是设置线程的名称。

 

获取线程的名称

我们先来看看如何获取线程的名称。通过Thread类的getName方法就可以获取现成的名称。它返回的是一个string类型,下面我们来看看如何使用该方法。

先通过currentThread的方法,获取到当前线程对象,然后调用它的getname方法获取线程的名称,之后我们来输出该名称。

package com.chenjie.executor.day04;

public class Main1 {
    public static void main(String[] args) {
        //获取当前正在执行的线程
        Thread thread = Thread.currentThread();
        //输出线程名称
        System.out.println(thread.getName());
    }
}

我们来看看执行结果是什么?结果显示的是main,它就说明我们主线上的名称叫做main。

main

Process finished with exit code 0

 

 

 设置线程的名称

下面我们来给它重新取一个名字,也就是下面要介绍到的设置线程的名称,通过setname方法就可以给线程设置新的名称,该方法只有一个参数name,它就是用来指定线程的新名称,另外该方法没有返回值,同时它还是一个同步方法,这也就意味着多个方法同时执行该方法时,也不会出现线程安全问题。

下面我们来看看如何使用该方法。依旧是通过currentThread的方法,来获取到当前线程对象。 

然后我们调用它的getName方法先来获取一次它的名称,并且将名称打印出来。接着我们调用setName方法,给线程设置一个新的名称,随意设置一个比如haha,接下来再次获取线程的名称和之前的名称做一个比较,最后输出线程的名称。

package com.chenjie.executor.day04;

public class Main1 {
    public static void main(String[] args) {
        //获取当前正在执行的线程
        Thread thread = Thread.currentThread();
        //输出线程名称
        System.out.println(thread.getName());
        thread.setName("haha");
        System.out.println(thread.getName());

    }
}

 

好了,我们来运行一下程序,我们来看一看现场的名称是否有变化。从执行结果来看,现场的名称被更改过来了

main
haha

Process finished with exit code 0

 总结

最后来总结一下本节的内容。本节我们介绍了thread类的两个方法,分别是getname和setname。 

getname用于获取线程的名称,setname用于设置线程的名称。在实际开发中偶尔也会用到它们。 


  

posted @ 2022-04-12 13:02  小陈子博客  阅读(526)  评论(0)    收藏  举报