Skip to main content
Life Cycle Of a Thread in JAVA
- A thread goes through various stages in its life cycle. For example, a thread is born, started, runs, and then dies. Following diagram shows complete life cycle of a thread.
- Above mentioned stages are explained here:
New :
- A new thread begins its life cycle in the new stages. It remains in this state until the program starts the thread. It is also referred to as a born thread.
Runnable :
- After a newly born thread is started, the thread becomes runnable. A thread in this state is considered to be executing its task.
Waiting:
- Sometimes a thread transitions to the waiting state while the thread waits for another thread to perform a task. A thread transitions back to the runnable state only when another thread signals the waiting thread to continue executing.
Timed waiting:
- A runnable thread can enter the timed waiting state for a specified interval of time. A thread in this state transitions back to the runnable state when that time interval expires or when the event it is waiting for occurs.
Terminated:
- A runnable thread enters the terminated state when it completes its task or otherwise terminates.