Java 线程组

Java线程教程 – Java线程组

线程总是线程组的成员。

默认情况下,线程的线程组是其创建者线程的组。

Java程序中的线程组由java.lang.ThreadGroup类的一个对象表示。

Thread类中的getThreadGroup()方法返回一个线程的ThreadGroup的引用。

例子

以下代码演示了,默认情况下,新线程是其创建者线程的线程组的成员。

public class Main {
  public static void main(String[] args) {
    Thread t1 = Thread.currentThread();

    ThreadGroup tg1 = t1.getThreadGroup();

    System.out.println("Current thread"s  name:  " + t1.getName());
    System.out.println("Current thread"s  group  name:  " + tg1.getName());

    Thread t2 = new Thread("my  new thread");

    ThreadGroup tg2 = t2.getThreadGroup();
    System.out.println("New  thread"s name:  " + t2.getName());
    System.out.println("New  thread"s  group  name:  " + tg2.getName());
  }
}

上面的代码生成以下结果。


注意

您还可以创建线程组,并在该线程组中放置一个新线程。

要在你的线程组中放置一个新线程,我们必须使用Thread类的一个构造函数来接受一个ThreadGroup对象作为参数。

以下代码将新线程放置在特定线程组中:

ThreadGroup  myGroup = new ThreadGroup("My Thread  Group");
Thread  t = new Thread(myGroup,  "myThreadName");

线程组以树状结构布置。线程组可以包含另一个线程组。

ThreadGroup类中的getParent()方法返回线程组的父线程组。

顶层线程组的父级为null。

ThreadGroup的activeCount()方法返回组中活动线程数的估计值。

ThreadGroup类的enumerate()方法返回线程组中的线程。

版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《Java 线程组》
文章链接:https://zhuji.vsping.com/293726.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。