There are two ways to create a thread:
1. By extending Thread class
2. By implementing Runnable interface.
Thread class:
Thread class provide constructors and methods to create and perform operations on a thread.Thread class extends Object class and implements Runnable interface.
|
Runnable interface:
The Runnable interface should be implemented by any class whose instances are intended to be executed by a thread. Runnable interface have only one method named run().
|
1. public void run(): is used to perform action for a thread.
|
Starting a thread:
start() method of Thread class is used to start a newly created thread. It performs following tasks:
· A new thread starts(with new callstack).
· The thread moves from New state to the Runnable state.
· When the thread gets a chance to execute, its target run() method will run.
|
Life Cycle of a Thread:
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.
·
New: A new thread begins its life cycle in the new state. 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.
·

No comments:
Post a Comment