线程-五

[TOC]7

线程补充

线程状态

调用线程有关的方法使线程进入不同的状态。可以通过调用Thread.getState()来获取线程运行的状态。

线程组

可以把线程归属到一个线程组中,线程组可以有线程对象,也可以有线程组,组中还可以有线程。类似嵌套一样。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public class SingleEnum {
public static void main(String[] args) {
ThreadGroup group = new ThreadGroup("thread-1");
for (int i = 0; i < 10; i++) {
Thread thread = new Thread(group, () -> {
System.out.println( ServiceEnum.instance.hashCode());
});
thread.start();
}
System.out.println(group.activeCount()+" 个线程正在运行");
}
}

enum ServiceEnum {
instance;
private SingleEnum singleEnum;
private ServiceEnum(){
singleEnum=new SingleEnum();
}
}

线程组可以有多级关联,也就是父对象有子对象,子对象再创建子对象。

线程组自动归属

如果创建一个线程组却没有指定所属的线程组之后,则线程组会自动归属到当前线程的线程组中。