📅  最后修改于: 2023-12-03 15:07:53.701000             🧑  作者: Mango
在Java中,每个线程都有自己的名字,可以为线程指定一个特定的名字,在代码调试和分析中非常有用。
为了为线程命名,可以使用 Thread
类的 setName()
方法,如下所示:
Thread.currentThread().setName("my-thread-name");
上述代码将当前线程的名称设置为“my-thread-name”。除此之外,还可以在创建线程的时候指定线程名,如下所示:
Thread myThread = new Thread("my-thread");
获取线程名称也很简单,只需要调用 Thread
类的 getName()
方法即可,如下所示:
String threadName = Thread.currentThread().getName();
上述代码将当前线程的名称存储在 threadName
变量中。
以下是一个示例程序,展示了如何为线程命名并获取线程名称:
public class MyThread implements Runnable {
public void run() {
System.out.println("Current thread name: " + Thread.currentThread().getName());
}
public static void main(String[] args) {
Thread.currentThread().setName("main-thread");
MyThread myThread = new MyThread();
Thread thread = new Thread(myThread, "my-thread");
thread.start();
System.out.println("Main thread name: " + Thread.currentThread().getName());
}
}
上述代码将创建一个名为“my-thread”的线程,并将当前线程的名称设置为“main-thread”。在 run()
方法中,打印当前线程的名称。在 main()
方法中,创建并启动新的线程,并打印主线程的名称。运行上述代码将输出以下内容:
Current thread name: my-thread
Main thread name: main-thread
以上就是如何在Java中命名线程并获取当前线程的名称的介绍。