Java 线程组

2018-02-28 15:08 更新

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()方法返回线程组中的线程。



以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号