如何给线程池里的线程命名

发布网友

我来回答

2个回答

热心网友

AbstractExecutorService的一个子类ThreadPoolExecutor中,有一个实例化函数:

public ThreadPoolExecutor(int corePoolSize,int maximumPoolSize,long keepAliveTime,TimeUnit unit,BlockingQueue<Runnable> workQueue,ThreadFactory threadFactory);

其中:ThreadFactory就是说这个池子里的线程是怎么例化,线程的属性值,如:

new ThreadFactory() {
    public Thread newThread(Runnable r) {
        return new Thread(r, "thread_pool_" + r.hashCode());
    }
}

就是给这个线程池里的所有线程起一个别名。

热心网友

LZ是自己继承并实现execute方法吗?还是使用Java提供的这个抽象类的一个实现类ThreadPoolExecutor?如果是用ThreadPoolExecutor,可以去看下ThreadFactory这接口

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com