Thread Scheduler in Java
Thread scheduler in
java is the part of the JVM that decides which thread should run.
There
is no guarantee that which runnable thread will be chosen to run by the thread
scheduler.
Only
one thread at a time can run in a single process.
The thread scheduler mainly uses preemptive or time slicing
scheduling to schedule the threads.
Fig: Thread Scheduler |
Difference
between preemptive scheduling and time slicing
Under
preemptive scheduling, the highest priority task executes until it enters the
waiting or dead states or a higher priority task comes into existence. Under
time slicing, a task executes for a predefined slice of time and then reenters
the pool of ready tasks. The scheduler then determines which task should
execute next, based on priority and other factors.
Difference between preemptive scheduling and time slicing
Under
preemptive scheduling, the highest priority task executes until it enters the
waiting or dead states or a higher priority task comes into existence. Under
time slicing, a task executes for a predefined slice of time and then reenters
the pool of ready tasks. The scheduler then determines which task should
execute next, based on priority and other factors.
No comments:
Post a Comment