Preface
When Sun Microsystems released the alpha version of
Java© in the winter of
1995, developers all over the world took notice. There were many
features of Java that attracted these developers, not the least of
which were the set of buzzwords Sun used to promote the language.
Java was, among other things, robust, safe, architecture-neutral,
portable, object-oriented, simple, and multithreaded. For many
developers, these last two buzzwords seemed contradictory: how could
a language that is multithreaded be simple?
It turns out that Java's threading system is simple,
at least relative to other threading systems. This simplicity makes
Java's threading system easy to learn so that even
developers who are unfamiliar with threads can pick up the basics of
thread programming with relative ease.
In early versions of Java, this simplicity came with tradeoffs; some
of the advanced features that are found in other threading systems
were not available in Java. Java 2 Standard Edition Version 5.0 (J2SE
5.0) changes all of that; it provides a large number of new
thread-related classes that make the task of writing multithreaded
programs that much easier.
Still, programming with threads remains a complex task. This book
shows you how to use the threading tools in Java to perform the basic
tasks of threaded programming and how to extend them to perform more
advanced tasks for more complex programs.
|