JDK-2179948 : LinkedBlockingQueue Nodes should unlink themselves before becoming garbage
  • Type: Backport
  • Backport of: JDK-6805775
  • Component: core-libs
  • Sub-Component: java.util.concurrent
  • Priority: P3
  • Status: Closed
  • Resolution: Fixed
  • Submitted: 2009-07-10
  • Updated: 2011-02-16
  • Resolved: 2009-11-02
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 6 JDK 7
6u17-rev b06Fixed 7Fixed
Description
See main CR.

Comments
EVALUATION Fixes for JDK7 have been pushed: Changeset: 49573ab3096a Author: dl Date: 2009-07-28 17:17 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/49573ab3096a 6805775: LinkedBlockingQueue Nodes should unlink themselves before becoming garbage 6815766: LinkedBlockingQueue's iterator can return null if drainTo(c) executes concurrently Summary: Faster, more correct. Use self-linking trick to avoid gc retention Reviewed-by: martin, dholmes ! src/share/classes/java/util/concurrent/LinkedBlockingDeque.java ! src/share/classes/java/util/concurrent/LinkedBlockingQueue.java ! test/java/util/Collection/MOAT.java + test/java/util/concurrent/BlockingQueue/OfferDrainToLoops.java + test/java/util/concurrent/ConcurrentQueues/IteratorWeakConsistency.java
29-07-2009