文章目录

  • 设置和获取线程名称
    • API介绍
    • 综合案例

设置和获取线程名称

API介绍

我们可以通过调用设置线程名称的API进行设置

方法名 说明
void setName(String name) 将此线程的名称更改为等于参数name
String getName() 返回此线程的名称
Thread currentThread() 返回对当前正在执行的线程对象的引用

例如:

 public class MyThread extends Thread {public MyThread() {}public MyThread(String name) {super(name);}@Overridepublic void run() {for (int i = 0; i < 100; i++) {System.out.println(getName()+":"+i);}}}public class MyThreadDemo {public static void main(String[] args) {MyThread my1 = new MyThread();MyThread my2 = new MyThread();//void setName(String name):将此线程的名称更改为等于参数 namemy1.setName("Tinge");my2.setName("Mingo");my1.start();my2.start();}}

也可以通过调用构造函数时,传入线程名,再调用父类的super(name);将线程名传进去

 public class MyThread extends Thread {public MyThread() {}public MyThread(String name) {super(name);}@Overridepublic void run() {for (int i = 0; i < 100; i++) {System.out.println(getName()+":"+i);}}}public class MyThreadDemo {public static void main(String[] args) {//Thread(String name)MyThread my1 = new MyThread("Tinge");MyThread my2 = new MyThread("Mingo");my1.start();my2.start();}}

二者运行效果均如下(结果不一定相同):

同时也可以调用currentThread()函数查看当前线程对象的信息

//static Thread currentThread() 返回对当前正在执行的线程对象的引用
System.out.println(Thread.currentThread().getName());

综合案例

package com.test;import java.io.IOException;
import java.io.InputStream;
import java.util.*;class ManThread extends Thread {public ManThread() {}public ManThread(String name) {super(name);}@Overridepublic void run() {System.out.println("当前男孩是:"+Thread.currentThread().getName()+"在表白!");for (int i = 0; i < 5; i++) {System.out.println(getName()+"跟女孩表白:"+(i+1)+"次");}}
}class WomenThread extends Thread {public WomenThread() {}public WomenThread(String name) {super(name);}@Overridepublic void run() {System.out.println("当前女孩是:"+Thread.currentThread().getName()+"在接收表白!");}
}class MyThreadDemo {public static void main(String[] args) {ManThread my1 = new ManThread();ManThread my2 = new ManThread();//void setName(String name):将此线程的名称更改为等于参数 namemy1.setName("Tinge");my2.setName("Mingo");my1.start();my2.start();WomenThread my3 = new WomenThread("蔷薇");WomenThread my4 = new WomenThread("莫妮倩");my3.start();my4.start();System.out.println("当前主线程是:"+Thread.currentThread().getName());}
}

运行结果如下:

Java多线程:设置和获取线程名称相关推荐

  1. java里新建线程设置线程名字_多线程开发不得不掌握,设置和获取线程名称及JVM如何运行的...

    原标题:多线程开发不得不掌握,设置和获取线程名称及JVM如何运行的 欲善编程,多看.多敲.多讨论:动眼.动手.动大脑. 1 如何设置和获取线程名称 多线程的运行状态是不确定的,在程序开发过程中,想要获 ...

  2. 集合到文件 文件到集合 点名器 集合到文件数据排序版 标准输入流 打印流 对象序列化流 对象返序列化流 Properties 游戏次数 进程和线程 线程 多线程的实现方式 设置和获取线程名称

    文章目录 集合到文件 文件到集合 点名器 集合到文件数据排序版 标准输入流 打印流 对象序列化流 对象返序列化流 Properties 游戏次数 进程和线程 线程 多线程的实现方式 设置和获取线程名称 ...

  3. java 多线程,及获取线程执行结果

    2019独角兽企业重金招聘Python工程师标准>>> Thread.Runnable 创建多线程 new Thread(new Runnable() {public void ru ...

  4. 实现多线程、进程、线程、设置和获取线程名称、线程调度、线程控制、线程生命周期、同步代码块、线程安全的类、Lock锁、生产者消费者模式

    实现多线程:

  5. 获取线程名称 java 1615387415

    获取线程名称 java 1615387415 多个线程一起跑的时候 有三个线程的运行 结果 无法明确子线程是哪个子线程的操作结果 获取与修改线程名称 演示 在线程的方法中 结果 获取当前线程对象 先获 ...

  6. 线程id 获取线程名称_016 线程及初步网络编程

    涉及内容:多线程的安全问题.线程的优先级.暂停线程的执行.线程同步.死锁和死锁的解决办法.生产者消费者模式的实现.网络编程三要素.IP端口及Socket的含义 1. 获取线程基本信息的方法 (1) 获 ...

  7. Java多线程系列(五):线程池的实现原理、优点与风险、以及四种线程池实现

    为什么需要线程池 我们有两种常见的创建线程的方法,一种是继承Thread类,一种是实现Runnable的接口,Thread类其实也是实现了Runnable接口.但是我们创建这两种线程在运行结束后都会被 ...

  8. Java 多线程(三) 线程的生命周期及优先级

    Java 多线程(三) 线程的生命周期及优先级 线程的生命周期 线程的生命周期:一个线程从创建到消亡的过程. 如下图,表示线程生命周期中的各个状态: 线程的生命周期可以分为四个状态: 1.创建状态: ...

  9. Java 多线程(八) 线程状态图

    Java 多线程(八) 线程状态图 结合多线程的学习过程,介绍线程的状态图,随着学习的深入,这幅图不断加入新的内容. 一.线程基本状态图 这幅图是在Java 多线程(三) 线程的生命周期及优先级出现过 ...

最新文章

  1. java如何计算时间天数差,java计算两个时间相差天数的方法汇总
  2. android:scaleType的各个属性解释
  3. Hadoop的学习路线图
  4. 谷歌浏览器打开链接,如何不是覆盖当前页面而自动跳转到新标签页?
  5. FFmpeg的H.264解码器源代码简单分析:解码器主干部分
  6. android 数据存储之SQLite
  7. 用matlab作gmm参数估计,GMM模型的EM参数估计算法
  8. PQ 8.05中文版硬盘物理分区与删除分区(图文详解)
  9. 《MySQL DBA: InnoDB_doublewrite/ChangeBuffer/AHI/FNP》
  10. 史玉柱自述:我是如何带队伍的
  11. 划分离散数学定义_《离散数学》学习记录 - 集合论
  12. 超级详细Window10安装Java JDK 和配置开发环境
  13. java 下载另存为_java中如何实现点击下载出现另存为的对话框
  14. 免杀远程监控软件大盘点
  15. 基于元胞自动机的城市规划
  16. 电脑重装系统后wifi间歇性断网该怎么解决
  17. 共享主机和 WordPress 主机之间的区别
  18. 查询接口返参配置化组件设计(适用定制信息查询)
  19. 计算机领域7位入围院士增选!沈向洋、王海峰候选中国工程院院士!
  20. JS设置CSS样式的几种方式(js设置!important)

热门文章

  1. python成语游戏代码_Python基础,猜成语小游戏
  2. ZZNUOJ_C语言1018:奇数偶数(完整代码)
  3. 《OpenCV3编程入门-毛星云》第一部分 快速上手OpenCV
  4. 2019高考,高考语文作文试题
  5. 计算机辅助教育教学方案,计算机辅助教学及设计
  6. Java字符串之split方法
  7. 【技术小说连载】新三国外传——草船借箭
  8. 学tlc和JAVA,SIMULINK_S-Function_TLC_RTW基础(给初学者)
  9. js数组取最大值最小值,以及小数取整
  10. 26.5th C/Linux短期班 一点分享与感受+部分爆照