This week's giveaway is in the EJB and other Java EE Technologies forum. We're giving away four copies of EJB 3 in Action and have Debu Panda, Reza Rahman, Ryan Cuprak, and Michael Remijan on-line! See this thread for details.
JDK5 defined high level synchronizers based on common patterns of concurrency (cyclic barrier, latches, producer-consumer, etc) that
obviated the need to implement concurrency using low level thread-based primitives. The book mentions none of these constructs.
Have these not changed/been enhanced in JDK7?
The book include the high level synchronizers that you mention. Chapter 3, Thread Synchronization Utilities, includes recipes about Semaphores, CountDownLatch, CyclicBarrier and Exchanger classes. The Java 7 API includes a new synchronization utility, the Phaser class. This class is useful when you have to execute concurrent tasks divided into phases and you need to synchronize them between each phase.