Mega Code Archive

 
Categories / Java Tutorial / Thread
 

Stopping a Thread with interrupt()

class TryThread  extends Thread {   public TryThread(String firstName, String secondName, long delay) {     this.firstName = firstName;     this.secondName = secondName;     aWhile = delay;     setDaemon(true);   }   public void run() {     try {       while (true) {         System.out.print(firstName);         sleep(aWhile);         System.out.print(secondName + "\n");       }     } catch (InterruptedException e) {       System.out.println(firstName + secondName + e);     }   }   private String firstName;   private String secondName;   private long aWhile; } public class MainClass {   public static void main(String[] args) {     Thread first = new TryThread("A ", "a ", 200L);     Thread second = new TryThread("B ", "b ", 300L);     Thread third = new TryThread("C ", "c ", 500L);     first.start();     second.start();     third.start();     try {       Thread.sleep(3000);       first.interrupt();       second.interrupt();       third.interrupt();     } catch (Exception e) {       System.out.println(e);     }   } } A B C a A b B a A c C a A b B a A b B c a C A a A b B a A c C b B a A a A b B c C a A b B a A a A b B c C a A b B a A c B b java.lang.InterruptedException: sleep interrupted C A a java.lang.InterruptedException: sleep interrupted C c java.lang.InterruptedException: sleep interrupted