Building sophisticated Java applets means learning about threading--if you need to read data from a network, for example, you can't afford to let a delay in its delivery lock up your entire applet. Java Threads introduces the Java threading API and uses non-computing analogies--such as scenarios involving bank tellers--to explain the need for synchronization and the dangers of deadlock. Scott Oaks and Henry Wong follow up their high-level examples with more detailed discussions on building a thread scheduler in Java, dealing with advanced synchronization issues, and handling exceptions.
If you are a Java programmer and you are thinking of using threads to make your work more responsive or even faster given todays symmetric multiprocessing hardware, then this is an excellent book. It probably isnt academic enough for use in formal education but as a practical guide to how not to do things, and hopefully how to do things better, it is excellent. - Harry Fairhead, VSJ, May 2005