Java Thread Status Example

Chapter: Thread Last Updated: 10-09-2016 05:50:07 UTC

Program:

            /* ............... START ............... */
                
class MyThread extends Thread {
	boolean waiting = true;
	boolean ready = false;

	MyThread() {
	}

	public void run() {
		String thrdName = Thread.currentThread().getName();
		System.out.println(thrdName + " starting.");
		while (waiting)
			System.out.println("waiting:" + waiting);
		System.out.println("waiting...");
		startWait();
		try {
			Thread.sleep(1000);
		} catch (Exception exc) {
			System.out.println(thrdName + " interrupted.");
		}
		System.out.println(thrdName + " terminating.");
	}

	synchronized void startWait() {
		try {
			while (!ready)
				wait();
		} catch (InterruptedException exc) {
			System.out.println("wait() interrupted");
		}
	}

	synchronized void notice() {
		ready = true;
		notify();
	}
}

public class JavaThreadStatus {

	public static void main(String args[]) throws Exception {
		MyThread thrd = new MyThread();
		thrd.setName("MyThread #1");
		showThreadStatus(thrd);
		thrd.start();
		Thread.sleep(50);
		showThreadStatus(thrd);
		thrd.waiting = false;
		Thread.sleep(50);
		showThreadStatus(thrd);
		thrd.notice();
		Thread.sleep(50);
		showThreadStatus(thrd);
		while (thrd.isAlive())
			System.out.println("alive");
		showThreadStatus(thrd);
	}

	static void showThreadStatus(Thread thrd) {
		System.out.println(thrd.getName() + " Alive:=" + thrd.isAlive() + " State:=" + thrd.getState());
	}
}
                /* ............... END ............... */
        

Tags

Thread Status, Java, Thread

Similar Programs Chapter Last Updated
Java Synchronized Method Thread 10-10-2017
Java Thread SetName() Method Thread 19-08-2017
Java Thread NotifyAll Method Thread 07-08-2017
Java Thread Synchronization Thread 07-01-2017
Java Display All Running Thread Thread 10-09-2016
Java Get Thread ID Example Thread 10-09-2016
Java Thread Suspend Example Thread 10-09-2016
Java Thread Stop Example Thread 10-09-2016
Java Set Thread Priority Thread 10-09-2016
Wait On object In Java Thread 13-08-2016
Demonstrate Join() In Java Thread Thread 13-08-2016
Wait For Threads To Finish In Java Thread 13-08-2016
Wait For Completion Of Thread In Java Thread 13-08-2016
Thread Yield In Java Example Thread 20-06-2016
Suspend Resume And Stop A Thread In Java Thread 21-07-2016
Interthread Communication In Java Example Thread 19-08-2017
Thread start() Method in Java Example Thread 21-07-2016
Thread run() Method in Java Thread 19-08-2017
Thread isAlive() Method in Java Example Thread 19-08-2017
Thread getPriority() Method In Java Example Thread 11-04-2016
Thread getName() Method In Java Example Thread 21-07-2016
Synchronized Method In Java Example Thread 25-06-2017
Wait And Notify in Java Example Thread 21-07-2016
Pause Execution with Sleep In Java Example Thread 21-07-2016
Thread Stack Trace In Java Example Thread 21-07-2016
Thread Volatile Variable In Java Example Thread 16-06-2017
Thread State In Java Example Thread 16-06-2017
Thread Sleep In Java Example Thread 15-07-2016
Thread Name In Java Example Thread 13-06-2017
Thread Join In Java Example Thread 13-06-2017

1 2