If we have 4 thread's executing 4 synchronized method's ,Three in the waiting state and one in running state,out of those three in the waiting state, two with high priority and the third one with the low priority and low priority thread is the first to go in the waiting state when we call notify() then which thread will start running first.
Your scenario has many complications that are not explained. Are the 4 methods that are synchronized in the same class?? Is the synchronized code synchronized on a method, a block, a static method??? What is the priority of the running thread compared to the other 3, etc. etc.
"JavaRanch, where the deer and the Certified play" - David O'Meara
Hi Nitin, there is no way u can predict which thread comes out waiting state first and goes into ready state. if u 've called notifyAll() all the 3 threads will go to ready state. I hope this helps u. bye ashish