Java 線程組

2018-02-28 15:08 更新

Java線程教程 - Java線程組


線程總是線程組的成員。

默認情況下,線程的線程組是其創(chuàng)建者線程的組。

Java程序中的線程組由java.lang.ThreadGroup類的一個對象表示。

Thread類中的getThreadGroup()方法返回一個線程的ThreadGroup的引用。

例子

以下代碼演示了,默認情況下,新線程是其創(chuàng)建者線程的線程組的成員。

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());
  }
}

上面的代碼生成以下結(jié)果。


注意

您還可以創(chuàng)建線程組,并在該線程組中放置一個新線程。

要在你的線程組中放置一個新線程,我們必須使用Thread類的一個構(gòu)造函數(shù)來接受一個ThreadGroup對象作為參數(shù)。

以下代碼將新線程放置在特定線程組中:

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

線程組以樹狀結(jié)構(gòu)布置。線程組可以包含另一個線程組。

ThreadGroup類中的getParent()方法返回線程組的父線程組。

頂層線程組的父級為null。

ThreadGroup的activeCount()方法返回組中活動線程數(shù)的估計值。

ThreadGroup類的enumerate()方法返回線程組中的線程。



以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號