This question is inspired by this other question.
If multiple threads are waiting on a synchronized block, and the lock becomes available, who goes firs
synchronized
According to this guy: http://tutorials.jenkov.com/java-concurrency/starvation-and-fairness.html
Java issues no guarantees about the sequence. So I guess it is not based on thread priority
I'll try to look further for an explanation on how Java actually decides who goes first.