package shutdown;

public class ShutdownDemo {

	public static void main ( String[] args ) {

		SlowCountdown2 countdown1 = new SlowCountdown2(10,"");
		SlowCountdown2 countdown2 = new SlowCountdown2(20,"   ");

		Thread thread1 = new Thread(countdown1);
		Thread thread2 = new Thread(countdown2);

		thread1.start();
		thread2.start();

		System.out.println("waiting for " + thread1.getName() + " to finish");
		for ( ; thread1.isAlive() ; ) {
			try {
				thread1.join();
			} catch ( InterruptedException e ) {}
		}

		System.out.println("shutting down " + thread2.getName());
		countdown2.shutdown();

		System.out.println("waiting for " + thread2.getName() + " to finish");
		for ( ; thread2.isAlive() ; ) {
			try {
				thread2.join();
			} catch ( InterruptedException e ) {}
		}

		System.out.println("all threads done");
	}

}
