Angelika Langer - Training & Consulting

 
HOME | SEMINARS | TALKS | ARTICLES | BOOKS | LINKS | IOSTREAMS | GENERICS | ABOUT | NEWSLETTER | CONTACT | SITEMAP
Links - Concurrent Programming Java

 
HOME 
SEMINARS 
TALKS 
ARTICLES 
BOOKS 

LINKS
  OVERVIEW

  JAVA
    J2SE
    CONCURRENCY
    GENERICS
    PERFORMANCE
    J2EE

  C++
    LANGUAGE
    TEMPLATES
 

IOSTREAMS 
GENERICS 
ABOUT 
NEWSLETTER 
CONTACT 
SITEMAP 
Links - Concurrent Programming Java

Below is a directory of websites related to the concurrent programming in Java.
 

Java Memory Model

William Pugh
Information about the Java Memory Model including the problems with Double-Checked Locking , maintained by William Pugh , Associate Professor, Dept. of Computer Science, Univ. of Maryland. William Pugh works with an expert group ( JSR 133 ) on a revision of the  Java memory model and thread specification. There is also an unofficial guide for compiler writers to implementing the new Java Memory Model (JMM) specified by JSR-133 for those interested in the details.

Specification Request JSR133
Homepage of the work group for the Java Memory Model and Thread Specification.

Java Concurrency Utilities

Doug Lea
Doug Lea and others work with an expert group ( JSR 166 ) to specify concurrency utilities for the Java platform libraries.  The new package named java.util.concurrent will be released with JDK 1.5. An overview of the new features contained in the new packages and a prototype implementation are available on Doug Lea's website.

Specification Request JSR166
Homepage of the work group for the concurrency utilities for the Java platform libraries.

Concurrency JSR-166 Interest Site
Doug Lea maintains an interest site related to the concurrency utilities.  Among other information it has links to further resources and you can join the mailing list.

Java 1.4 Backport of JSR 166
Dawid Kurzyniec ported the java.util.concurrent API, introduced in Java 5.0, back to Java 1.4 (see download page ). The purpose of this library is to enable gradual transition from Java 1.4 to 5.0: the library allows to develop concurrent applications for Java 1.4 that should work with Java 5.0 simply by changing package names.  The backport is based on public-domain sources from the JSR 166 CVS repository, and the dl.util.concurrent package.

Articles

Patterns of Distributed and Concurrent Programming.
Countless articles on topics related to distributed and concurrent programming by Douglas Schmidt , Associate Professor, Electrical and Computer Engineering, Univ. of California, Irvine. Includes pattern such as Active Object , Monitor , Half-Sync/Half Async , Asynchronous Completion Token , Reactor , and Proactor . Most code samples are in C++, but the patterns as such can easily be translated to Java.

Concurrent Programming in Java
The online supplement of Doug Lea's book "Concurrent Programming in Java - Design principles and patterns" has links to related reading and resources.

IBM Developer Works
A series of articles on multithreading.  Below are listed some of the highlights.

Threading Lightly
Part 1 : Synchronization is not the enemy: When do we have to synchronize, and how expensive is it really?
Part 2 : Reducing contention: Improve application performance by staying out of your own way
Part 3 : Sometimes it is best not to share: Exploiting ThreadLocal to enhance scalability
A mini series by Brian Goetz published in 2001 in his column "Java Theory and Practice" at the IBM Developer Work site. An introductory discussion of best practice techniques in concurrent programming.

Concurrent Collection in JDK 5.0
Part 1 : Concurrency made simple (sort of): An introduction to the util.concurrent package
Part 2 : Concurrect Collections Classes: ConcurrentHapMap an CopyOnWriteArrayList offer thread safety and improved scalability
Part 3 : Building a better HashMap: How ConcurrentHashMap offers higher concurrency without compromising thread safety
A mini series by Brian Goetz published in 2003 in his column "Java Theory and Practice" at the IBM Developer Work site.

New Features in JDK 5.0
Part1 : More flexible, scalable locking: New lock classes improve on synchronized -- but don't count synchronized out just yet
Part 2 : Going atomic: The new atomic classes are the hidden gems of java.util.concurrent
Some articles by Brian Goetz published in 2004 in his column "Java Theory and Practice" at the IBM Developer Work site.

Fixing the Java Memory Model
Part 1 : What is the Java Memory Model, and how was it broken in the first place?
Part 2 : How will the JMM change under JSR 133?
A mini series by Brian Goetz published in 2004 in his column "Java Theory and Practice" at the IBM Developer Work site. As the titles suggest, the series discusses the Java memory model and how it was clarified in Java 5.0.

Acquire multiple locks in a fixed, global order to avoid deadlock
An article by Peter Haggar in 2000.  It is an excerpt from this book "Practical Java".

Thread pools and work queues: Thread pools help achieve optimum resource utilization
An article by Brian Goetz published in 2002 in his column "Java Theory and Practice" at the IBM Developer Work site.
 

Books

A comparative book review was published at the JavaWorld website in 2003; it includes some of the Java concurrency titles mentioned in the book list.

Go to BOOKS CONCURRENCY for book recommendations on concurrent programming in Java. Below are listed some of the highlights.

Java Concurrency in Practice
A book by Brian Goetz and Joseph Bowbeer released in February 2006.  Detailed and thorough coverage of multithreading issues in Java, including all Java 5.0 novelties.

Concurrency : State Models & Java Programs
A book by Jeff Magee and Jeff Kramer released in 1999. It provides a systematic and practical approach to designing, analyzing and implementing concurrent programs.  The examples are in Java, but the book provides a sound theoretical background that is language independent.

Concurrent Programming in Java , 2nd Ed.: Design Principles and Patterns
A book by Doug Lea released in 1999. It is one of the best book about concurrent programming in Java that is currently available.

Java Threads, 3rd Edition
A book by Scott Oaks and Henry Wong released in 2004. It covers all aspect of concurrent programming Java including the JDK 5.0 concurrency utilities.
 

More Links

University of Tel-Aviv
A collection of links to articles on the subject of multithreading in Java maintained by Eran Yahav , graduate student of Computer Science, Univ. of Tel-Aviv.

 
© Copyright 1995-2005 by Angelika Langer.  All Rights Reserved.    URL: < http://www.AngelikaLanger.com/Resources/Links/Multithreading.htm  last update: 26 Nov 2005