ThreadGroup 复制线程组的两个方法。
public int enumerate(ThreadGroup list[]) // 相对于 enumerate(list,true)
public int enumerate(ThreadGroup list[], boolean recurse) // recuese 控制是否递归复制线程组
package concurrent;
import java.util.concurrent.TimeUnit;
public class EnumerateThreadGroup {
public static void main(String[] args) {
ThreadGroup myGroup1 = new ThreadGroup("MyGroup1");
ThreadGroup myGroup2 = new ThreadGroup(myGroup1, "MyGroup2");
try {
TimeUnit.MILLISECONDS.sleep(2);
} catch (InterruptedException e) {
e.printStackTrace();
}
ThreadGroup mainGroup = Thread.currentThread().getThreadGroup();
ThreadGroup[] list = new ThreadGroup[mainGroup.activeCount()];
int recurseSize = mainGroup.enumerate(list);
System.out.println(recurseSize);
recurseSize = mainGroup.enumerate(list, false);
System.out.println(recurseSize);
}
}
2
1
myGroup1 的父 group 为 mainGroup,而 myGroup2 的父 group 为 myGroup1,因此上述代码运行之后,递归复制的结果为 2,不递归的情况为 1。
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/chengqiuming/article/details/123607484
内容来源于网络,如有侵权,请联系作者删除!