Java Examples - Suspending a thread

Advertisements


Problem Description:

How to suspend a thread for a while?

Solution:

Following example shows how to suspend a thread for a while by creating sleepingThread() method.

public class SleepingThread extends Thread {
   private int countDown = 5;
   private static int threadCount = 0;
   public SleepingThread() {
      super("" + ++threadCount);
      start();
   }
   public String toString() { 
      return "#" + getName() + ": " + countDown;
   }
   public void run() {
      while (true) {
         System.out.println(this);
         if (--countDown == 0)
         return;
         try {
            sleep(100);
         }
         catch (InterruptedException e) {
            throw new RuntimeException(e);
         }
      }
   }
   public static void main(String[] args) 
   throws InterruptedException {
      for (int i = 0; i < 5; i++)
      new SleepingThread().join();
      System.out.println("The thread has been suspened.");
   }
}

Result:

The above code sample will produce the following result.

The thread has been suspened.


Advertisements
Advertisements