首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用线程id或名称获取threadGroup

使用线程id或名称获取threadGroup
EN

Stack Overflow用户
提问于 2020-06-01 17:02:23
回答 1查看 85关注 0票数 0

有没有办法通过传递/使用线程idname来获取threadGroup信息?问题是,我不能使用currentThread()方法。我想要获取特定线程的threadGroup信息。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-01 17:31:58

您可以使用Thread.getAllStackTraces()获取所有线程的列表。使用该Map中的密钥,您可以找到您想要的线程。之后,您可以简单地调用getThreadGroup()来获取线程组。检查以下示例:

代码语言:javascript
复制
Map<Thread, StackTraceElement[]> threads = Thread.getAllStackTraces();
for (Map.Entry<Thread, StackTraceElement[]> entry : threads.entrySet()) {
    Thread t = entry.getKey();
    ThreadGroup group = t.getThreadGroup();
    System.out.println(t+" with group: "+group);            
}

这将生成如下输出:

代码语言:javascript
复制
Thread[main,5,main] with group: java.lang.ThreadGroup[name=main,maxpri=10]
Thread[Finalizer,8,system] with group: java.lang.ThreadGroup[name=system,maxpri=10]
Thread[Reference Handler,10,system] with group: java.lang.ThreadGroup[name=system,maxpri=10]
Thread[Signal Dispatcher,9,system] with group: java.lang.ThreadGroup[name=system,maxpri=10]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62128844

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档