How to check if Java main thread is alive

To check if the main thread is running you cannot make use of the Thread.isAlive() method : you may get the error "Cannot make a static reference to the non-static method isAlive() from the type Thread", as main is a static method thus can only access static methods.

To check if the main method thread is alive you can get the instance of the main thread by Thread.currentThread() static method.


public class ThreadAlive {

	public static void main(String[] args) {

		Thread t = Thread.currentThread();

		System.out.println("Thread : Main  Exited "
				+ Thread.currentThread().isAlive());