REVIEW - Java Thread Programming

Title:

Java Thread Programming

Author:

Paul Hyde

ISBN:

0672315858

Publisher:

Sams Publishing (1999)

Pages:

510pp

Reviewer:

Christer Loefving

Reviewed:

December 2000

Rating:

★★★☆☆

you get a good tour through the land of Java threads by buying and reading this title.

I believe Java still holds it's position as the only programming language where Thread safety is considered from its first designing phase. It is primary implemented through three methods in

Java.lang.Object; wait(), notify(),
and
notifyAll(),
inherited by all Java classes and by the Java.lang.Thread class, possible to instantiate almost everywhere in a Java program.

This fundamental feature in Java programming is something almost every 'Java-from-the-beginning'-book is dealing with. Often on several pages, ending up with a more or less useless example. This book is a good cure against this phenomenon. It begins with an overall talk about threads in Java, explaining how the virtual machine itself is governed by threads. Thus introducing concepts like thread priority in a self-evident way.

Not forgotten either are lesser-known thread-safety features like the var-modifier

volatile
. Often mentioned only by its name in Java books.

I sometimes complain about fragmentary code in books. This is a reversed situation. Every single code sample is a complete program (or class), after typing ready to compile and run! Fortunately this is well written Java code and also well formatted, so it is possible to get an overview already in the book. In fact the main part of the text is built around the lines in these code-samples. An approach which produces both advantages and drawbacks; reading becomes less theoretical, the text more comprehensive and technically exact, but on the other hand, it becomes not very suitable for a read-through from the first page to the last.

Thread-coding in Java can also be fun! (I never forget an 'old' example with laying hens :)) Here 'Animated Image Component' and 'Thread pooling' are the most 'enjoyable'.

Finally, there is not an enclosed CD with the source code. Some of the examples are pretty long and will take time to type by hand.

Apart from this drawback, you get a good tour through the land of Java threads by buying and reading this title.

A warning to beginners; you will only get gain from the first chapter as most of the book is aimed to the professional user level.


Book cover image courtesy of Open Library.