获取线程 ID 和当前线程

x33g5p2x  于2022-02-19 转载在 其他  
字(0.8k)|赞(0)|评价(0)|浏览(212)

一 点睛

1 API

// 获取线程唯一 ID
public long getId()
// 获取线程名称
public final String getName()
// 当前执行线程的引用
public static native Thread currentThread()

2 说明

线程的 ID 在整个 JVM 进程中都会是唯一的,,并且从 0 开始逐次递增。 mian 线程的 getId() 并不等于0,这是因为在一个 JVM 进程启动的时候,实际上是开辟了很多个线程,自增序列已经有了一定的消耗,因此我们自己创建的线程并不是从0开始的。

二 实战

1 代码

package concurrent;

public class ThreadIDAndName {
    public static void main(String[] args) {
        Thread thread = new Thread() {
            public void run() {
                System.out.println(Thread.currentThread() == this);
                System.out.println("sub Thread  name is " + Thread.currentThread().getName());
                System.out.println("sub Thread is " + Thread.currentThread().getId());
            }
        };
        thread.start();

        System.out.println("main Thread name is " + Thread.currentThread().getName());
        System.out.println("main Thread id is " + Thread.currentThread().getId());
    }
}

2 测试

main Thread name is main
true
main Thread id is 1
sub Thread  name is Thread-0
sub Thread is 12

相关文章

微信公众号

最新文章

更多