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.
At the turn of the century I was developing and teaching a series of contract training courses in Java for a local IT company. When they made the request for a course covering Java threads I needed a quick refresher in the subject. This is the book that I used. The content is as much a primer on threads (multitasking) than it is an in-depth explanation of how threads are implemented in the Java programming language. There is no large project, while working code is included, it is generally in the form of short snippets. There are only two or three instances where the code example is more than two pages long and there is a great deal of internal whitespace. Topics covered include controlling, scheduling, creating, activating and deleting Java threads. While this book is of course very dated regarding the specifics, it still has value as an introduction to this critical and increasingly important coding technique.
good book,for basic and advanced aspect have been explained through some theory and example, i think you should read not only once,and if you have some question,you come back and find the answer in the book
Not as deep as Concurrency in Practice, but at the time the only book available on the topic: was enough at the time, but would not take you very far today.