文档章节

实现ThreadFactory,修改Thread的名称

手绘灿烂
 手绘灿烂
发布于 2016/02/14 10:48
字数 95
阅读 264
收藏 1

阿里云携手百名商业领袖、技术大咖,带您一探行进中的数字新基建!>>>

    static class SelfDefinedThreadFactory implements ThreadFactory {
        final AtomicInteger threadNumber = new AtomicInteger(1);
        final String namePrefix;

        SelfDefinedThreadFactory(String namePrefix) {
            this.namePrefix = namePrefix+"-";
        }

        public Thread newThread(Runnable r) {
            Thread t = new Thread( r,namePrefix + threadNumber.getAndIncrement());
            if (t.isDaemon())
                t.setDaemon(true);
            if (t.getPriority() != Thread.NORM_PRIORITY)
                t.setPriority(Thread.NORM_PRIORITY);
            return t;
        }
    }


默认的ThreadFactory是DefaultThreadFactory, 我们可以重新实现ThreadFactory接口,对Thread进行一些自定义的实现,比如线程的名称或是线程的优先级。

© 著作权归作者所有

手绘灿烂
粉丝 7
博文 53
码字总数 20728
作品 0
朝阳
程序员
私信 提问
加载中

评论(0)

Java的每个Thread都希望拥有自己的名称

一. 介绍   平时工作中可能会碰到排查多线程的bug,而在排查的时候,如果线程(单个线程或者是线程池的线程)没有一个比较明确的名称,那么在排查的时候就比较头疼,因为排查问题首先需要找...

寻觅beyond
05/23
0
0
死磕 java线程系列之线程池深入解析——构造方法

(手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本。 简介 ThreadPoolExecutor的构造方法是创建线程池的入口,虽然比较简单,但是信息量很大,由此也能引发一系列...

彤哥读源码
2019/10/15
113
0
ThreadFactory & ThreadGroup

原本想给 多线程任务 做一个挂起(暂停)功能,然后配合 httpcomponents-asyncclient 并发测试,结果意外令人汗颜,竟然CPU占用100%。。。 使用VisualVM观察CPU抽样,发现org.apache.http.i...

goto-array
2013/09/01
254
0
聊聊HystrixConcurrencyStrategy

序 本文主要研究一下HystrixConcurrencyStrategy HystrixConcurrencyStrategy hystrix-core-1.5.12-sources.jar!/com/netflix/hystrix/strategy/concurrency/HystrixConcurrencyStrategy.ja......

go4it
2018/06/30
171
0
【转】创建线程以及线程池时候要指定与业务相关的名字,以便于追溯问题

原文:https://www.jianshu.com/p/d6245f2c3a9d 3.9 创建线程以及线程池时候要指定与业务相关的名字,以便于追溯问题 日常开发中当一个应用中需要创建多个线程或者线程池时候最好给每个线程或...

osc_g08ulskg
2018/08/28
1
0

没有更多内容

加载失败,请刷新页面

加载更多

windows下安装M2Crypto

安装M2Crypto使用python里的pip安装功能安装即可。 步骤: 1、首先下载安装python 2.7版本 。下载完成后把python的路径加入到环境变量中 2、安装pip 。pip的下载地址为:https://pypi.python...

A_laoshiren
44分钟前
14
0
戳破中台泡沫,软件定义让数字中台脱虚入实

道路是曲折的,前途是光明的。 用这句话来形容数字中台当前的处境可谓是再恰当不过。从过去几年的轰轰烈烈,到年初备受各方质疑,数字中台从巅峰跌落到谷底,遭受了过山车般的待遇。其实对于...

大数据在线
45分钟前
12
0
vue源码---将data对象中的属性变成observable

function defineReactive(obj, key, val, cb) { Object.defineProperty(obj, key, { enumerable: true, configurable: true, get: () => { re......

gtandsn
47分钟前
11
0
我应该使用Vagrant还是Docker来创建一个孤立的环境? [关闭]

问题: I use Ubuntu for development and deployment and have a need for creating an isolated environment. 我使用Ubuntu进行开发和部署,并且需要创建一个隔离的环境。 I am consideri......

技术盛宴
50分钟前
28
0
PanDownload登录时账号登录失败,获取bdstoken失败

PanDownload一直以来都是我信赖的云盘下载工具,其下载速度确实是快 但天有不测风云,最近登录网盘账号时,提示账号登录失败,获取bdstoken失败 问题显现: 提示信息:账号登录失败,获取bds...

二营长意大利炮
50分钟前
40
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部