Java 线程命名问题解决
前言
网上冲浪时刷到线程池的文章,想想看自己好像还没在实际场景中设置过线程名称,小小研究一下。
研究过程
默认命名
创建的线程都会有自己的名字,如果不设置,程序会给线程默认的名字,如Thread-0
复制代码
设置线程名称,应当有个理由。现在一个项目中有订单相关线程池、有付款相关线程池,给线程命名,可以容易区分线程种类。如Thread-order-0
、Thread-fund-0
Thread 内部实现原理
首先我们打开 Thread 类,属性 name 就是线程的名称。
复制代码
测试:
抽象实现
首先实现线程工厂构造器,主要构造线程工厂对象
复制代码
查看源码 ExecutorService 源码,发现预留了线程工厂的入参
复制代码
测试代码正确性:
复制代码
文章转载自:帅气的涛啊
评论