zoukankan      html  css  js  c++  java
  • currentThread()方法返回代码段正在被哪个线程调用

    currentThread()方法返回代码段正在被哪个线程调用

    package com.stono.thread2.page16;
    
    public class MyThread extends Thread{
        public MyThread() {
            System.out.println("构造方法的打印:"+Thread.currentThread().getName());
        }
        @Override
        public void run() {
            System.out.println("run方法的打印:"+Thread.currentThread().getName());
        }
        
        public static void main(String[] args) {
            MyThread myThread = new MyThread();
    //        myThread.start();
    //        构造方法的打印:main
    //        run方法的打印:Thread-0
    
            myThread.run();
    //        构造方法的打印:main
    //        run方法的打印:main
    
        }
    }

     注意与this.getName()的区别

    package com.stono.thread2.page16;
    
    public class CountOperate extends Thread{
        public CountOperate() {
            System.out.println("CountOperate---begin");
            System.out.println("Thread.currentThread().getName()="+Thread.currentThread().getName());
            System.out.println("this.getName()="+this.getName());
            System.out.println("CountOperate---end");
        }
        @Override
        public void run() {
            // super.run();
            System.out.println("run---begin");
            System.out.println("Thread.currentThread().getName()="+Thread.currentThread().getName());
            System.out.println("this.getName()="+this.getName());
            System.out.println("run---end");
            
        }
        
        public static void main(String[] args) {
            CountOperate c = new CountOperate();
            Thread t1 = new Thread(c);
            t1.setName("A");
            t1.start();
    //    CountOperate---begin
    //    Thread.currentThread().getName()=main
    //    this.getName()=Thread-0
    //    CountOperate---end
    //    run---begin
    //    Thread.currentThread().getName()=A
    //    this.getName()=Thread-0
    //    run---end
        }
    
    }

     this.getName()是Thread.getName()方法,源码:

        public final String getName() {
            return new String(name, true);
        }
  • 相关阅读:
    vi 命令
    element-ui + el-dialog + Vue.component 注册的tinymce富文本控件 第二次及以后打开dialog出现问题解决方法
    【经典数据结构】哈希表
    TCP建立连接与释放连接过程中的几个问题
    【算法题目】求二叉树中节点的最大距离
    字符串处理函数
    [LeetCode] Balanced Binary Tree
    [LeetCode] N-Queens II
    [LeetCode] N-Queens
    【linux使用】bash shell命令行常用快捷键
  • 原文地址:https://www.cnblogs.com/stono/p/8370699.html
Copyright © 2011-2022 走看看