· It can cease to be ready to execute ( by calling a blocking i/o method)
· It can get pre-empted by a high-priority thread, which becomes ready to execute.
· It can explicitly call a thread-scheduling method such as wait or suspend.
· Solaris JVM’s are pre-emptive.
· Windows JVM’s were pre-emptive until Java 1.0.2
2. Time-sliced or Round Robin Scheduling
· A thread is only allowed to execute for a certain amount of time. After that, it has to contend for the CPU (virtual CPU, JVM) time with other threads.
· This prevents a high-priority thread mono-policing the CPU.
· The drawback with this scheduling is – it creates a non-deterministic system – at any point in time, you cannot tell which thread is running and how long it may continue to run.
· Mactinosh JVM’s
This is very short description, I want to know more about Thread scheduling in Java.any comment appreciated :). thanks
No comments:
Post a Comment