Java高并发编程学习--1. 线程的命名

一、线程的默认名称

如果没有显示地指定一个线程的名称,线程会以"Thread-"和一个在JVM中不断自增的数字组合,形成线程名称。
package threadName;

import java.util.stream.IntStream;

/**
 * @ClassName ThreadName
 * @Description TODO
 * @Author Cays
 * @Date 2019/5/1 10:40
 * @Version 1.0
 **/
public class ThreadName {
    public static void main(String[] args) {
        IntStream.range(0,5).boxed().map(i->new Thread(
                ()-> System.out.println(Thread.currentThread().getName())
        )).forEach(Thread::start);
    }
}

在这里插入图片描述

二、命名线程

线程构造函数:
Thread(String name)
Thread(ThreadGroup group, Runnable target, String name, long stackSize)
Thread(ThreadGroup group, Runnable target, String name)
Thread(ThreadGroup group, String name)

线程启动前可以对线程名称进行修改。

package threadName;

import java.util.stream.IntStream;

public class ThreadName {
    public static void main(String[] args) {
        /*IntStream.range(0,5).boxed().map(i->new Thread(
                ()-> System.out.println(Thread.currentThread().getName())
        )).forEach(Thread::start);*/
        Thread a=new Thread(()-> System.out.println(Thread.currentThread().getName())
                ,"aaa");
        a.setName("bbbb");
        a.start();
        a.setName("ccc");
    }
}

在这里插入图片描述

三、线程的父子关系

  • 一个线程的创建由另一个线程完成
  • 被创建线程的父线程是创建它的线程
  • main函数所在的线程由JVM创建,即main线程,意味着我们创建的线程的父线程都是main线程
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值