gpt4 book ai didi

java - 如何为可调用线程命名?

转载 作者:IT老高 更新时间:2023-10-28 20:54:33 35 4
gpt4 key购买 nike

我正在使用 ExecutorService 线程池执行一个 Callable Object。我想给这个线程起个名字。

更具体地说,在旧版本中我是这样做的 -

Thread thread = new Thread(runnable Task);
thread.setName("My Thread Name");

我在 log4j 日志记录中使用线程名称,这对故障排除有很大帮助。现在我正在将我的代码从 Java 1.4 迁移到 Java 1.6。我已经写了这个(如下所示)-但我不知道如何给这个线程命名。

private final ExecutorService executorPool = Executors.newCachedThreadPool();
Future<String> result = executorPool.submit(callable Task);

请给我一些想法来给这个线程命名?

最佳答案

我目前正在这样做:

    someExecutor.execute(new Runnable() {
@Override public void run() {
final String orgName = Thread.currentThread().getName();
Thread.currentThread().setName(orgName + " - My custom name here");
try {
myAction();
} finally {
Thread.currentThread().setName(orgName);
}
}
});

关于java - 如何为可调用线程命名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3227040/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com