簡體   English   中英

如何更改標准JDK corba ORB線程池的線程名稱

[英]How to change the thread names of the standard JDK corba ORB threadpool

是否可以設置默認線程池中使用的標准jdk corba ORB的線程名?

默認情況下,每個連接有3個線程。 它們的名稱沒有用,因為它們始終默認為: p:default-threadpool; w: Idle p:default-threadpool; w: Idle 主要出於調試原因而更改其名稱將是很好的。

查看JDK的com.sun.corba.se.impl.orbutil.threadpool.ThreadpoolManagerImpl源,可以看到無法從類外部訪問該名稱。 目前,一旦我控制了線程,就使用Thread.currentThread().setName()設置線程名稱,但這似乎是一個hack。 有沒有更好的辦法?

您可以遍歷當前正在運行的線程,並根據需要對其重命名。 就像是:

int counter = 1;
for (Thread t : Thread.getAllStackTraces().keySet()) {
  if (t.getName().startsWith("p:default-threadpool")) t.setName("Corba #" + counter++);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM