Pages

program demonstrates the Daemon Thread

The following program demonstrates the Daemon Thread:
public class DaemonThread extends Thread {
  public void run() {
  System.out.println("Entering run method");


  try {
  System.out.println("In run Method: currentThread() is"
  + Thread.currentThread());

  while (true) {
  try {
  Thread.sleep(500);
  } catch (InterruptedException x) {
  }

  System.out.println("In run method: woke up again");
  }
  } finally {
  System.out.println("Leaving run Method");
  }
  }
  public static void main(String[] args) {
  System.out.println("Entering main Method");

  DaemonThread t = new DaemonThread();
  t.setDaemon(true);
  t.start();

  try {
  Thread.sleep(3000);
  } catch (InterruptedException x) {
  }

  System.out.println("Leaving main method");
  }

}
Output of this program is:

C:\j2se6\thread>javac DaemonThread.java

C:\j2se6\thread>java DaemonThread
Entering main Method
Entering run method
In run Method: currentThread() isThread[Thread-0,5,main]
In run method: woke up again
In run method: woke up again
In run method: woke up again
In run method: woke up again
In run method: woke up again
In run method: woke up again
Leaving main method

C:\j2se6\thread>