zoukankan      html  css  js  c++  java
  • 设定线程名称的方式

    设定线程名字有三种方式:

    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());
  • 相关阅读:
    已解决: 已引发: "无法加载 DLL“opencv_core2410”: 找不到指定的模块。
    Xcode 设置图片全屏显示
    独创轻松实现拖拽,改变层布局
    WCF Odata 开放数据协议应用
    MVC中,加入的一个aspx页面用到AspNetPager控件处理办法
    关于 HRESULT:0x80070
    Springboot文件上传大小设置
    Jquery Validate 表单验证使用
    Quartz任务调度框架使用
    js中常见命令
  • 原文地址:https://www.cnblogs.com/feichangnice/p/10647790.html
Copyright © 2011-2022 走看看