This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
If I understand my recent reading correctly, you are correct. The JVM decides which thread runs when. You can use the sleep method to *try* to control which thread runs at what time, but it is not guaranteed to work.