Как установить имя для потока?
Есть ли способ установить понятное имя для потока в коде?
Например, я хочу, чтобы поток с именем Thread-11 на изображении назывался что-то вроде "MyImportThread".
Ответы
Ответ 1
Вы можете легко передать имя потока в его конструкторе, например:
Thread foo = new Thread("Foo");
... или позвонив по телефону Thread#setName
:
public final void setName (String threadName)
Устанавливает имя темы.
как thread.setName("Thread-11");
или как Thread.currentThread().setName("Thread-11");
Ответ 2
Проверьте конструкторы Thread
, есть несколько с параметром String name
. Или вы можете вызвать setName(String)
в существующем потоке.
Ответ 3
Вы пробовали что-то подобное?
Thread.currentThread().setName("MyThread");
Посмотрите также на Threads reference
, особенно на конструкторов.
Ответ 4
Класс Thread имеет метод для этого:
public final void setName (String threadName)
Since: API Level 1
Sets the name of the Thread.
Вы попробовали?
Ответ 5
Попробуйте следующее:
Thread thread = new Thread("MyImportThread") {
public void run(){
// code
}
};
thread.start();
System.out.println(thread.getName());
Ответ 6
Да, вы можете установить имя для темы, используя:
Thread.getCurrentThread().setName(threadName);