ThreadGroup用于组织管理线程,可通过构造函数创建,默认加入当前线程组,也可指定父组建立层级,线程可显式加入某组以便统一操作,尽管现多用线程池,但在需批量管理时仍有价值。
在Java中,ThreadGroup 用于将多个线程组织在一起,方便统一管理(如批量中断、查看状态等)。创建 ThreadGroup 很简单,可以通过其构造函数来实现。
ThreadGroup group = new ThreadGroup("MyGroup");
这个线程组的父组是当前线程所属的线程组(通常是 main 线程组)。
ThreadGroup parentGroup = new ThreadGroup("ParentGroup");
ThreadGroup childGroup = new ThreadGroup(parentGroup, "ChildGroup");
这样就建立了父子关系,childGroup 是 parentGroup 的子组。
eadGroup 后,可以把线程放入其中:
ThreadGroup group = new ThreadGroup("WorkerGroup");
Thread thread = new Thread(group, () -> {
System.out.println("Running in group: " + Thread.currentThread().getThreadGroup().getName());
}, "WorkerThread");
thread.start();
这样线程就在指定的组中运行,便于后续统一管理。