How to display all running Thread in Java



Problem Description

How to display all running Thread?

Solution

Following example demonstrates how to display names of all the running threads using getName() method.

public class Main extends Thread {
   public static void main(String[] args) {
      Main t1 = new Main();
      t1.setName("thread1");
      t1.start();
      ThreadGroup currentGroup = Thread.currentThread().getThreadGroup();
      int noThreads = currentGroup.activeCount();
      Thread[] lstThreads = new Thread[noThreads];
      currentGroup.enumerate(lstThreads);
      
      for (int i = 0; i < noThreads; i++) System.out.println("Thread No:" + i + " = " + lstThreads[i].getName());
   }
}

Result

The above code sample will produce the following result.

Thread No:0 = main
Thread No:1 = thread1
java_threading.htm
Advertisements