java中如何获取线程名称
更新时间:2023年06月12日 16:36:03 作者:瓜导
这篇文章主要介绍了java中如何获取线程名称问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
java获取线程名称
调用MyThread中的方法
package cn.itcast.day09.getName; import cn.itcast.day09.getName.MyThread; /* 线程的名称: 主线程:main 新线程:Thread-1,Thread-0,Thread-2 */ public class Demo01Thread { public static void main(String[] args) { //3.创建Thread类的子类对象 MyThread mt=new MyThread(); //调用Thread类中的方法start方法,开启新的线程,执行run方法 mt.start(); new MyThread().start(); new MyThread().start(); System.out.println(Thread.currentThread().getName()); } }
package cn.itcast.day09.getName; /* 获取线程的名称: 1.使用Thread类中的方法getName() String gerName()返回该线程的名称 2.可以先获取到当前正在执行的线程,使用线程中的方法getName()获取线程的名称 static Thread currentThread() 返回对当前正在执行的线程对象的引用 */ public class MyThread extends Thread { // 重写 Thread类中的run方法,设置线程任务 public void run() { //获取线程的名称: //使用Thread类中的方法getName() // String name = getName(); // System.out.println(name); // static Thread currentThread() 返回对当前正在执行的线程对象的引用 // Thread t=Thread.currentThread(); // System.out.println(t); // // String name = t.getName(); // System.out.println(name); System.out.println(Thread.currentThread().getName()); } }
获取线程 ID 和当前线程
点睛
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
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
SpringBoot3使用自定义注解+Jackson实现接口数据脱敏的步骤
本文介绍了一种以优雅的方式实现对接口返回的敏感数据,如手机号、邮箱、身份证等信息的脱敏处理,这种方法也是企业常用方法,话不多说我们一起来看一下吧2024-03-03最全LocalDateTime、LocalDate、Date、String相互转化的方法
大家在开发过程中必不可少的和日期打交道,对接别的系统时,时间日期格式不一致,每次都要转化,本文为大家准备了最全的LocalDateTime、LocalDate、Date、String相互转化方法,需要的可以参考一下2023-06-06
最新评论