如何在Java中获取和设置线程名称?
如何在Java中获取和设置线程名称?
Java中的每个线程都有一些唯一的名称。它可以由开发人员(用户定义)提供,也可以由JVM(JVM定义)生成的默认名称(如果用户未定义)提供。
我们可以通过使用Thread类的方法来获得Thread的名称:publicfinalStringgetName();
我们可以使用Thread类的方法设置线程的名称:publicfinalvoidsetName(Stringname);
示例1:获取线程的名称
class GetName{
public static void main(String[] args){
String tn = Thread.currentThread().getName();
System.out.println(tn);
}
}输出:
E:\javasource>java GetName main
在这里,Thread.currentThread()。getName()-currentThread()是Thread类的静态方法。这样,我们可以获得当前正在执行的线程,getName()并将给出线程的名称。
示例2:设置线程名称
class SetName{
public static void main(String[] args){
Thread.currentThread().setName("main is changed to parent");
System.out.println(Thread.currentThread().getName());
}
}输出结果
E:\javasource>java SetName main is changed to parent
在这里,Thread.currentThread()。setName(“main更改为parent”)-当前线程是main线程,因此main的名称被main替换,通过方法setName(Stringstr)更改为parent