
- Java.lang - Home
- Java.lang - Boolean
- Java.lang - Byte
- Java.lang - Character
- Java.lang - Character.Subset
- Java.lang - Character.UnicodeBlock
- Java.lang - Class
- Java.lang - ClassLoader
- Java.lang - Compiler
- Java.lang - Double
- Java.lang - Enum
- Java.lang - Float
- Java.lang - InheritableThreadLocal
- Java.lang - Integer
- Java.lang - Long
- Java.lang - Math
- Java.lang - Number
- Java.lang - Object
- Java.lang - Package
- Java.lang - Process
- Java.lang - ProcessBuilder
- Java.lang - Runtime
- Java.lang - RuntimePermission
- Java.lang - SecurityManager
- Java.lang - Short
- Java.lang - StackTraceElement
- Java.lang - StrictMath
- Java.lang - String
- Java.lang - StringBuffer
- Java.lang - StringBuilder
- Java.lang - System
- Java.lang - Thread
- Java.lang - ThreadGroup
- Java.lang - ThreadLocal
- Java.lang - Throwable
- Java.lang - Void
- Java.lang Package Useful Resources
- Java.lang - Useful Resources
- Java.lang - Discussion
Java Thread isAlive() Method
Description
The Java Thread isAlive() method tests if this thread is alive. A thread is alive if it has been started and has not yet died.
Declaration
Following is the declaration for java.lang.Thread.isAlive() method
public final boolean isAlive()
Parameters
NA
Return Value
This method returns true if this thread is alive, false otherwise.
Exception
NA
Example: Checking a thread being live using isAlive
The following example shows the usage of Java Thread isAlive() method. In this program, we've created a thread class ThreadDemo by implementing Runnable interface. In constructor, current thread is retrieved using currentThread() method and status of thread is printed using isAlive() method.
In main method, we've created a new thread of ThreadDemo class and started it using start() method. Then using join(), we've made the thread to wait till die. In the end again, its status is printed using isAlive() method.
package com.tutorialspoint; public class ThreadDemo implements Runnable { public void run() { Thread t = Thread.currentThread(); // tests if this thread is alive System.out.println("status = " + t.isAlive()); } public static void main(String args[]) throws Exception { Thread t = new Thread(new ThreadDemo()); // this will call run() function t.start(); // waits for this thread to die t.join(); // tests if this thread is alive System.out.println("status = " + t.isAlive()); } }
Output
Let us compile and run the above program, this will produce the following result −
status = true status = false
Example: Checking a thread being live using isAlive with given Delay
The following example shows the usage of Java Thread isAlive() method. In this program, we've created a thread class ThreadDemo by implementing Runnable interface. In constructor, current thread is retrieved using currentThread() method and status of thread is printed using isAlive() method.
In main method, we've created a new thread of ThreadDemo class and started it using start() method. Then using join(), we've made the thread to wait till die. In the end again, its status is printed using isAlive() method.
package com.tutorialspoint; public class ThreadDemo implements Runnable { public void run() { Thread t = Thread.currentThread(); // tests if this thread is alive System.out.println("status = " + t.isAlive()); } public static void main(String args[]) throws Exception { Thread t = new Thread(new ThreadDemo()); // this will call run() function t.start(); // waits for this thread to die t.join(2000); // tests if this thread is alive System.out.println("status = " + t.isAlive()); } }
Output
Let us compile and run the above program, this will produce the following result −
status = true status = false