Concurrent Programming in JavaTM: Design Principles and Patterns, Second
Edition
By Doug Lea
In Concurrent Programming in Java, Second Edition, you will find thoroughly
updated coverage of the Java 2 platform and new or expanded coverage of:
•
•
•
•
Memory model
Cancellation
Portable parallel programming
Utility classes for concurrency control
The Java platform provides a broad and powerful set of APIs, tools, and technologies.
One of its most powerful capabilities is the built-in support for threads. This makes
concurrent programming an attractive yet challenging option for programmers using
the Java programming language.
This book shows readers how to use the Java platform's threading model more
precisely by helping them to understand the patterns and tradeoffs associated with
concurrent programming.
You will learn how to initiate, control, and coordinate concurrent activities using the
class java.lang.Thread, the keywords synchronized and volatile, and the methods wait,
notify, and notifyAll. In addition, you will find detailed coverage of all aspects of
concurrent programming, including such topics as confinement and synchronization,
deadlocks and conflicts, state-dependent action control, asynchronous message passing
and control flow, coordinated interaction, and structuring web-based and
computational services.
The book targets intermediate to advanced programmers interested in mastering the
complexities of concurrent programming. Taking a design pattern approach, the book
offers standard design techniques for creating and implementing components that
solve common concurrent programming challenges. The numerous code examples
throughout help clarify the subtleties of the concurrent programming concepts
discussed.
1