如何在Java中自定义ThreadFactory子线程的所有名称?
如果我正在扩展现有的ThreadFactory实现,如何确保创建的所有线程都具有相同的前缀?我厌倦了在日志中查看如何在Java中自定义ThreadFactory子线程的所有名称?,java,multithreading,Java,Multithreading,如果我正在扩展现有的ThreadFactory实现,如何确保创建的所有线程都具有相同的前缀?我厌倦了在日志中查看Thread-9,我想更容易区分线程 有人对如何进行此操作有任何建议吗?提供您自己的ThreadFactory接口实现: pool = Executors.newScheduledThreadPool(numberOfThreads, new TF()); class TF implements ThreadFactory { public synchronized Thre
Thread-9
,我想更容易区分线程
有人对如何进行此操作有任何建议吗?提供您自己的ThreadFactory接口实现:
pool = Executors.newScheduledThreadPool(numberOfThreads, new TF());
class TF implements ThreadFactory {
public synchronized Thread newThread(Runnable r) {
Thread t = new Thread(r) ;
t.setName("Something here....");
return t;
}
}
提供您自己的ThreadFactory接口实现:
pool = Executors.newScheduledThreadPool(numberOfThreads, new TF());
class TF implements ThreadFactory {
public synchronized Thread newThread(Runnable r) {
Thread t = new Thread(r) ;
t.setName("Something here....");
return t;
}
}
你能提供你自己的吗?这将允许您使用所需的任何命名约定创建线程。您可以提供自己的命名约定吗?这将允许您使用所需的任何命名约定创建线程。您应该使用自己的自定义线程工厂。默认工厂没有多大用处。实现ThreadFactoryBuilder以创建自定义线程工厂,该线程工厂允许您执行以下操作:
您应该使用自己的定制螺纹工厂。默认工厂没有多大用处。实现ThreadFactoryBuilder以创建自定义线程工厂,该线程工厂允许您执行以下操作:
谢谢你的例子。但是,我使用的API只允许我指定ThreadPool类实现,而不允许我指定ThreadFactory实现。你说的ThreadPool类是什么意思?您必须使用哪个界面?遗嘱执行人?哇。我觉得自己很愚蠢。ThreadPool是Quartz中的一个接口。谢谢你的回答。我认为这将是有用的。我要更新这个问题。谢谢你的例子。但是,我使用的API只允许我指定ThreadPool类实现,而不允许我指定ThreadFactory实现。你说的ThreadPool类是什么意思?您必须使用哪个界面?遗嘱执行人?哇。我觉得自己很愚蠢。ThreadPool是Quartz中的一个接口。谢谢你的回答。我认为这将是有用的。我将更新问题。请参见