- Running;
- Sleeping;
- Wait;
- Monitor.
What do these states mean?
Running.
Thread.State = RUNNABLE.
"Thread state for a runnable thread. A thread in the runnable state is executing in the Java virtual machine but it may be waiting for other resources from the operating system such as processor."
Sleeping
Thread.State = TIMED_WAITING.
Thread state for a waiting thread with a specified waiting time. A thread is in the timed waiting state due to calling one of the following methods with a specified positive waiting time:
Thread.sleepObject.waitwith timeoutThread.joinwith timeoutLockSupport.parkNanosLockSupport.parkUntil
Wait
Thread.State = WAITING.
Thread state for a waiting thread. A thread is in the waiting state due to calling one of the following methods:
A thread in the waiting state is waiting for another thread to perform a particular action. For example, a thread that has called Object.wait() on an object is waiting for another thread to call Object.notify() or Object.notifyAll() on that object. A thread that has called Thread.join() is waiting for a specified thread to terminate.
Object.waitwith no timeoutThread.joinwith no timeoutLockSupport.park
Monitor
Thread.State = BLOCKED.
Thread state for a thread blocked waiting for a monitor lock.
A thread in the blocked state is waiting for a monitor lock
to enter a synchronized block/method or
reenter a synchronized block/method after calling
Object.wait.

No comments:
Post a Comment