Concurrency JSR-166 Interest Site

Maintained by Doug Lea

To join a mailing list discussing this JSR, go to: http://altair.cs.oswego.edu/mailman/listinfo/concurrency-interest.

While JSR166 has completed and is a now final approved JCP spec, the expert group remains involved in incremental improvements and changes to the java.util.concurrent package and related classes and packages.


Package jsr166y

Preliminary versions of classes targeted for Java 7.

Note; Usually the easiest way to build these yourself is to "download tarball" of full sources and then unpack and use "ant jsr166ydist" to create jar and javadocs. You can also get anonymous read-only CVS access setting CVSROOT to :pserver:anonymous@.../export/home/jsr166/jsr166 with project also named jsr166 (as in "cvs co jsr166")

There is also a wiki containing additional documentation, notes, advice, examples, and so on for these classes that you are welcome to contribute to.


JSR166 maintenance updates

The current versions of the main JSR166 classes, reflecting updates described in an automatically generated list of changes made since the Tiger (J2SE5) release can be found at:

These include updates and bugfixes to the final approved version that are scheduled to be included in Mustang (J2SE6). You may be able to use these versions now, without waiting for J2SE updates, by obtaining the jsr166 jar and running java using the option -Xbootclasspath/p:jsr166.jar (You may need to precede "jsr166.jar" with its full file path.)


Package jsr166x

Preliminary versions of Deques (double-ended queues) and Navigable collections (concurrent sorted maps and sets) that appear in Mustang (J2SE6) are separately available as package jsr166x, which can be used with any Tiger J2SE:


Other JSR166 materials

For the official JSR166 proposal see the JCP web site..

The contents of JSR166 have been released as part of J2SE 5.0 ("Tiger") , mostly in new package java.util.concurrent.

The book Java Concurrency in Practice by Brian Goetz, with Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea. Addison-Wesley, 2006 describes use of java.util.concurrent.

Slides from the JavaOne Collections Connection BoF (PDF) (PPT) describe Tiger and Mustang collections features, including concurrent collections.

There is a a case study report about the JCP process used in JSR166.

There is a technical paper on the JSR166 synchronizer framework appearing in the 2004 PODC CSJP Workshop.

Expert group member Brian Goetz has written several on-line articles about java.util.concurrent features, as listed at his publications page.

There are some out-of-date but mostly still accurate slides on highlights of JSR-166.

The contributing members of the JSR166 expert group are Josh Bloch, Joe Bowbeer, Brian Goetz, David Holmes, Doug Lea (spec lead), and Tim Peierls. Bill Scherer joined as a member in maintenance and extension efforts. Others contributing notable guidance and expertise include Dave Dice (Sun), Martin Buchholz (Sun), Cliff Click (Azul), Steve Dever (Sun), and Bill Pugh (UMd). Thanks also to the many other people contributing ideas, reviewing APIs and code, and testing out pre-releases.


Doug Lea