Thread group in java

Thread group in java

The java.lang.ThreadGroup class provides the facility to create the thread group. Thread group provides a way to group multiple threads in a single unit. In this way, multiple threads can be suspended, resume or interrupted as a single unit.

ThreadGroup class constructor

ThreadGroup(String name) : It creates a thread group with given name.

ThreadGroup(ThreadGroup parent, String name) : It creates a thread group with given parent group and name.

Note:

  • A thread is can access the information about its own thread group but cannot access information about its thread group’s parent thread group or any other thread group.
  • A thread group creates a tree in which every thread group except the initial thread group has a parent.

 

Example

public class ThreadGroupTest implements Runnable{
  public void run() {  
      System.out.println(Thread.currentThread().getName());  
  }  
  public static void main(String[] args) {
      ThreadGroupTest threadGroupTest = new ThreadGroupTest();  
      ThreadGroup threadGroup = new ThreadGroup("Parent Thread Group");  
 
      Thread t1 = new Thread(threadGroup, threadGroupTest,"T1");  
      t1.start();  
      Thread t2 = new Thread(threadGroup, threadGroupTest,"T2");  
      t2.start();  
      Thread t3 = new Thread(threadGroup, threadGroupTest,"T3");  
      t3.start();  
 
      System.out.println("Thread Group Name: "+threadGroup.getName());  
      threadGroup.list();  
  }
}

Output

T1
T2
Thread Group Name: Parent Thread Group
T3
java.lang.ThreadGroup[name=Parent Thread Group,maxpri=10]
    Thread[T3,5,Parent Thread Group]
Content Protection by DMCA.com
Please Share