設定線程名稱的方式


設定線程名字有三種方式:

1.線程內部調用t1.setName("abc")方法

2.線程創建時傳入new Thread("abc")方法

3.線程創建后調用t1.setName("abc")方法

獲取線程名稱的方式:在Run方法內部調用this.getName()方法

獲取線程對象的方式:Run方法內部調用Thread.currentThread()方法

示例如下:

 1 public static void main(String[] args) {
 2         // TODO Auto-generated method stub
 3         //method1();
 4         //method2();
 5         method3();
 6         
 7     }
 8     //方式3
 9     private static void method3(){
10         Thread t1 =  new Thread(){
11             public void run(){
12                 System.out.println("我是" + this.getName());
13             }
14         };
15         
16         Thread t2 =  new Thread(){
17             public void run(){
18                 System.out.println("我是" + this.getName());
19             }
20         };
21         
22         t1.setName("abc");
23         t2.setName("def");
24         
25         t1.start();
26         t2.start();
27     }
28     //方式2
29     private static void method2(){
30         new Thread(){
31             public void run(){
32                 this.setName("abc");
33                 System.out.println("我是" + this.getName());
34             }
35         }.start();
36         
37         new Thread(){
38             public void run(){
39                 this.setName("def");
40                 System.out.println("我是" + this.getName());
41             }
42         }.start();
43     }
44     
45     //方式1
46     private static void method1(){
47         new Thread("abc"){
48             public void run(){
49                 System.out.println("我是" + this.getName());
50             }
51         }.start();
52         
53         new Thread("def"){
54             public void run(){
55                 System.out.println("我是" + this.getName());
56             }
57         }.start();
58     }

 獲取線程對象:

1 new Thread(new Runnable(){
2                 public void run(){
3                     //獲取當前線程對象
4                     System.out.println(Thread.currentThread().getName());
5                 }
6             }).start();
7             
8             //主線程名稱
9             System.out.println(Thread.currentThread().getName());

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM