当前位置: 代码迷 >> 综合 >> 设置线程名称
  详细解决方案

设置线程名称

热度:42   发布时间:2024-02-25 16:59:00.0
//设置线程名称
public class Test5 {public static void main(String[] args) {//1)在匿名内部类结尾处设置线程名称Thread t1=new Thread(new Runnable() {@Overridepublic void run() {int i=1;System.out.println(Thread.currentThread().getName()+"\ti="+i);//Thread.currentThread()返回当前线程,getName()获取名称}},"i1: ");//i1线程名称t1.start();//运行结果:i1: i=1//2)匿名内部类并无指定线程名称时,程序自定义设置线程名称new Thread(new Runnable() {@Overridepublic void run() {int j=2;System.out.println(Thread.currentThread().getName()+"\tj="+j);}}).start();//运行结果:Thread-0	j=2,因为没有线程名次程序自定义线程命名:Thread-0//3)调用Thread.setName()方法指定匿名内部类线程名称Thread t2=new Thread(new Runnable() {@Overridepublic void run() {int x=3;System.out.println(Thread.currentThread().getName()+"\tx="+x);}});t2.setName("x3");//x3线程名称t2.start();//运行结果:x3	x=3//执行main主线程int y=4;System.out.println("y="+y);//Thread.isAlive()判断线程是否结束System.out.println(t1.isAlive());//falseSystem.out.println(t2.isAlive());//true/*这里运行结果都是固定,并不会因为执行多次线程程序顺序就会发生变化以上代码只是设置线程名称*/}
}

 

  相关解决方案