[concurrency-interest] backport-util-concurrent: release 2.0 now available

Dawid Kurzyniec dawidk at mathcs.emory.edu
Wed Jul 6 13:39:06 EDT 2005

The backport-util-concurrent, version 2.0, has been released:


Change log:

New features
*  Features and fixes resulting from reconcillation with JSR 166 as of
   Jul 4, such as: lazySet in atomics, 
   RunnableFuture, RunnableScheduledFuture,
   ScheduledThreadPoolExecutor.decorateTask(), better interrupt detection
   in ThreadPoolExecutor, avoiding garbage retention with timeouts in
   SynchronousQueue, fixed reset in CyclicBarrier, remove(x,null) -> false
   in ConcurrentHashMap, changes in navigable maps, addAll fixed in
   CopyOnWriteArrayList, etc.

*  New backported classes: ConcurrentLinkedQueue, 
*  Optimizations (replacement of ReentrantLock by synchronized) in:
   CyclicBarrier, DelayQueue, Exchanger, ThreadPoolExecutor
*  Optimizations of atomic variables (simple reads are now volatile 
rather than
*  New backported methods in the fair implementation of the ReentrantLock:
   hasWaiters(Condition), getWaitQueueLength(Condition),
*  Retrofitted collection classes: AbstractMap, Collections, LinkedList,
*  Numerous javadoc clarifications and fixes
Bug fixes
*  Upon deserialization, ReentrantLock, ReentrantReadWriteLock, and 
   were potentially in a locked (or even illegal) state, contrary to the 
*  In the fair implementation of ReentrantLock, wait queues of condition
   variables were not actually fair - they are now
*  LinkedBlockingQueue had potential deadlocks in remove() and 
toArray(). It has
   now been replaced by a completely new implementation, based on java.u.c
   (rather than dl.u.c)
*  Race condition in Condition.awaitUninterruptibly() could cause 
signals to be
   missed if they were coinciding with interrupt attempts
*  Updated unit tests for atomics, AbstractQueuedSynchonizer, 
   CyclicBarrier, ExecutorCompletionService, LinkedBlockingQueue, 
   ReentrantReadWriteLock, ScheduledExecutor, ThreadPoolExecutor
*  New unit tests for ConcurrentLinkedQueue, ConcurrentSkipList[Map,Set],
   Utils.nanoTime(), LinkedList, Tree[Map,Set]
*  Updated numerous stress tests, and new ones added: CachedThreadPoolLoops,
   [Collection,Map]WordLoops, CASLoops, and more

More information about the Concurrency-interest mailing list