It's beyond the scope of this book to fully cover threads and the difficulties surrounding their use. However, the threading models that underlie different JVMs (even on the same OS) can exhibit different behavior. If your application is not properly designed, previously unexposed issues might appear due to thread scheduler differences resulting from a move to another platform (or a different JVM).
For more information on problems (and solutions) to threading issues, read Java Threads by Scott Oaks and Henry Wong (O'Reilly) and Concurrent Programming in Java by Doug Lea (Addison-Wesley). The threading issues that appear result from (incorrect) assumptions?that the threading model is based on the underlying JVM implementation, or regarding the use of deprecated threading APIs, such as Thread.stop( ), Thread.resume( ), and Thread.suspend( ).