Java.lang.Thread.interrupted() Method



Description

The java.lang.Thread.interrupted() method interrupts this thread. Tests whether the current thread has been interrupted.

If this method were to be called twice in succession, the second call would return false (unless the current thread were interrupted again, after the first call had cleared its interrupted status and before the second call had examined it).

Declaration

Following is the declaration for java.lang.Thread.interrupted() method

public static boolean interrupted()

Parameters

NA

Return Value

This method returns true if the current thread has been interrupted; false otherwise.

Exception

NA

Example

The following example shows the usage of java.lang.Thread.interrupted() method.

package com.tutorialspoint;

import java.lang.*;

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();
        
      // interrupt the threads
      if (!t.interrupted()) {
         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();
   }
} 

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
java_lang_thread.htm
Advertisements