Thread
类提供了更改和获取线程名称的方法。默认情况下,每个线程都有一个名称,即thread-0
,thread-1
, ...
等。 可以使用setName()
方法更改线程的名称。 setName()
和getName()
方法的语法如下:
public String getName()
: 用于返回线程的名称。public void setName(String name)
: 用于更改线程的名称。命名线程的示例
package com.zyiz; class TestMultiNaming1 extends Thread { public void run() { System.out.println("running..."); } public static void main(String args[]) { TestMultiNaming1 t1 = new TestMultiNaming1(); TestMultiNaming1 t2 = new TestMultiNaming1(); System.out.println("Name of t1:" + t1.getName()); System.out.println("Name of t2:" + t2.getName()); t1.start(); t2.start(); t1.setName("New ThreadName"); System.out.println("After changing name of t1:" + t1.getName()); } }
执行上面示例代码,得到以下结果:
Name of t1:Thread-0 Name of t2:Thread-1 After changing name of t1:New ThreadName running... running...
currentThread()
方法返回当前正在执行的线程的引用。函数的原型如下:
public static Thread currentThread()
currentThread()方法的示例
package com.zyiz; class TestMultiNaming2 extends Thread { public void run() { System.out.println(Thread.currentThread().getName()); } public static void main(String args[]) { TestMultiNaming2 t1 = new TestMultiNaming2(); TestMultiNaming2 t2 = new TestMultiNaming2(); t1.start(); t2.start(); } }
执行上面示例代码,得到以下结果:
Thread-1 Thread-0