新建线程池的时候,可以传入ThreadFactory作为参数
Executors.newCachedThreadPool(ThreadFactory threadFactory)
可以参考Executors自带的默认线程工厂类的实现
Executors.defaultThreadFactory();
static class NameableThreadFactory implements ThreadFactory{
private static final AtomicInteger poolNumber = new AtomicInteger(1);
private final ThreadGroup group;
private final AtomicInteger threadNumber = new AtomicInteger(1);
private final String namePrefix;
NameableThreadFactory(String name) {
SecurityManager s = System.getSecurityManager();
group = (s != null) ? s.getThreadGroup() :
Thread.currentThread().getThreadGroup();
namePrefix = name+"-pool-" +
poolNumber.getAndIncrement() +