The Java ThreadGroup class represents a set of threads. It can also include other thread groups. The thread groups form a tree in which every thread group except the initial thread group has a parent.
ThreadGroup Class DeclarationFollowing is the declaration for java.lang.ThreadGroup class −
public class ThreadGroup extends Object implements Thread.UncaughtExceptionHandlerThreadGroup Class Constructors Sr.No. Constructor & Description 1
ThreadGroup(String name)
This constructs a new thread group.
2ThreadGroup(ThreadGroup parent, String name)
This creates a new thread group.
ThreadGroup Class Methods Methods InheritedThis class inherits methods from the following classes −
Following example showcases the usage of ThreadGroup in a multithreaded program.
package com.tutorialspoint; public class ThreadGroupDemo implements Runnable { public static void main(String[] args) { ThreadGroupDemo tg = new ThreadGroupDemo(); tg.func(); } public void func() { try { // create a parent ThreadGroup ThreadGroup pGroup = new ThreadGroup("Parent ThreadGroup"); // create a child ThreadGroup for parent ThreadGroup ThreadGroup cGroup = new ThreadGroup(pGroup, "Child ThreadGroup"); // create a thread Thread t1 = new Thread(pGroup, this); System.out.println("Starting " + t1.getName() + "..."); t1.start(); // create another thread Thread t2 = new Thread(cGroup, this); System.out.println("Starting " + t2.getName() + "..."); t2.start(); // display the number of active threads System.out.println("Active threads in \"" + pGroup.getName() + "\" = " + pGroup.activeCount()); // block until the other threads finish t1.join(); t2.join(); } catch (InterruptedException ex) { System.out.println(ex.toString()); } } // implements run() public void run() { for(int i = 0;i < 1000;i++) { i++; } System.out.println(Thread.currentThread().getName() + " finished executing."); } }Output
Let us compile and run the above program, this will produce the following result −
Starting Thread-0... Starting Thread-1... Thread-0 finished executing. Active threads in "Parent ThreadGroup" = 1 Thread-1 finished executing.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4