
- 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 isInterrupted() Method
Description
The Java Thread isInterrupted() method tests whether this thread has been interrupted. The interrupted status of the thread is unaffected by this method.
A thread interruption ignored because a thread was not alive at the time of the interrupt will be reflected by this method returning false.
Declaration
Following is the declaration for java.lang.Thread.isInterrupted() method
public boolean isInterrupted()
Parameters
NA
Return Value
This method returns true if this thread has been interrupted; false otherwise.
Exception
NA
Example: Checking if thread is interrupted
The following example shows the usage of Java Thread isInterrupted() method. In this program, we've created a thread class ThreadDemo by implementing Runnable interface. In constructor, a new thread is created using new Thread. Its name is printed using getName() and using start() method, thread is started. Using isInterrupted() method, we're checking if thread is not interrupted then interrupt the thread using interrupt() method. Thereafter we block the thread using join() method. In run() method, we added a sleep of 1 second in while(true) loop, which causes an InterruptedException.
In main method, we've created two threads of ThreadDemo.
package com.tutorialspoint; public class ThreadDemo implements Runnable { Thread t; ThreadDemo() { t = new Thread(this); System.out.println("Executing " + t.getName()); // this will call run() fucntion t.start(); // tests whether this thread has been interrupted if (!t.isInterrupted()) { t.interrupt(); } // block until other threads finish try { t.join(); } catch(InterruptedException e) {} } public void run() { try { while (true) { Thread.sleep(1000); } } catch (InterruptedException e) { System.out.print(t.getName() + " interrupted:"); System.out.println(e.toString()); } } public static void main(String args[]) { new ThreadDemo(); new ThreadDemo(); } }
Output
Let us compile and run the above program, this will produce the following result −
Executing Thread-0 Thread-0 interrupted:java.lang.InterruptedException: sleep interrupted Executing Thread-1 Thread-1 interrupted:java.lang.InterruptedException: sleep interrupted