У меня многопоточное приложение, и я назначаю уникальное имя для каждого потока через свойство setName()
. Теперь я хочу, чтобы функциональность получала доступ к потокам напрямую с их соответствующим именем.
Что-то вроде следующей функции:
public Thread getThreadByName(String threadName) {
Thread __tmp = null;
Set<Thread> threadSet = Thread.getAllStackTraces().keySet();
Thread[] threadArray = threadSet.toArray(new Thread[threadSet.size()]);
for (int i = 0; i < threadArray.length; i++) {
if (threadArray[i].getName().equals(threadName))
__tmp = threadArray[i];
}
return __tmp;
}
Вышеуказанная функция проверяет все текущие потоки и затем возвращает нужный поток из набора запущенных потоков. Возможно, мой желаемый поток прерывается, тогда вышеуказанная функция не будет работать. Любые идеи о том, как включить эту функциональность?