294 |
|
* @param e the comparison value for checking match |
295 |
|
* @param mode mode |
296 |
|
* @param nanos timeout value |
297 |
< |
* @return matched item, or s if cancelled |
297 |
> |
* @return matched item, or null if cancelled |
298 |
|
*/ |
299 |
|
private E awaitFulfill(Node<E> pred, Node<E> s, E e, |
300 |
|
int mode, long nanos) { |
360 |
|
for (;;) { |
361 |
|
Node<E> h = head.get(); |
362 |
|
Node<E> first = h.next; |
363 |
< |
if (first != null && first.next == first) { // help advance |
363 |
> |
if (first != null && first.get() == first) { // help advance |
364 |
|
advanceHead(h, first); |
365 |
|
continue; |
366 |
|
} |
511 |
|
|
512 |
|
/** |
513 |
|
* Inserts the specified element at the tail of this queue. |
514 |
< |
* As the queue is unbounded this method will never throw |
514 |
> |
* As the queue is unbounded, this method will never throw |
515 |
|
* {@link IllegalStateException} or return {@code false}. |
516 |
|
* |
517 |
|
* @return {@code true} (as specified by {@link Collection#add}) |
551 |
|
|
552 |
|
/** |
553 |
|
* Inserts the specified element at the tail of this queue, |
554 |
< |
* waiting up to the specified wait time for the element to be |
555 |
< |
* received by a consumer invoking {@code take} or {@code poll}. |
554 |
> |
* waiting up to the specified wait time if necessary for the |
555 |
> |
* element to be received by a consumer invoking {@code take} or |
556 |
> |
* {@code poll}. |
557 |
|
* |
558 |
|
* @throws NullPointerException if the specified element is null |
559 |
|
*/ |