ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/main/java/util/concurrent/DelayQueue.java
(Generate patch)

Comparing jsr166/src/main/java/util/concurrent/DelayQueue.java (file contents):
Revision 1.63 by jsr166, Tue Feb 5 19:54:06 2013 UTC vs.
Revision 1.64 by jsr166, Tue Jun 4 22:56:47 2013 UTC

# Line 184 | Line 184 | public class DelayQueue<E extends Delaye
184                      long delay = first.getDelay(NANOSECONDS);
185                      if (delay <= 0)
186                          return q.poll();
187 <                    else if (leader != null)
187 >                    first = null; // don't retain ref while waiting
188 >                    if (leader != null)
189                          available.await();
190                      else {
191                          Thread thisThread = Thread.currentThread();
# Line 233 | Line 234 | public class DelayQueue<E extends Delaye
234                          return q.poll();
235                      if (nanos <= 0)
236                          return null;
237 +                    first = null; // don't retain ref while waiting
238                      if (nanos < delay || leader != null)
239                          nanos = available.awaitNanos(nanos);
240                      else {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines