22 |
|
* producer. The <em>tail</em> of the queue is that element that has |
23 |
|
* been on the queue the shortest time for some producer. |
24 |
|
* |
25 |
< |
* <p>Beware that, unlike in most collections, the {@code size} |
26 |
< |
* method is <em>NOT</em> a constant-time operation. Because of the |
25 |
> |
* <p>Beware that, unlike in most collections, the {@code size} method |
26 |
> |
* is <em>NOT</em> a constant-time operation. Because of the |
27 |
|
* asynchronous nature of these queues, determining the current number |
28 |
< |
* of elements requires a traversal of the elements. |
28 |
> |
* of elements requires a traversal of the elements, and so may report |
29 |
> |
* inaccurate results if this collection is modified during traversal. |
30 |
> |
* Additionally, the bulk operations <tt>addAll</tt>, |
31 |
> |
* <tt>removeAll</tt>, <tt>retainAll</tt>, <tt>containsAll</tt>, |
32 |
> |
* <tt>equals</tt>, and <tt>toArray</tt> are <em>not</em> guaranteed |
33 |
> |
* to be performed atomically. For example, an iterator operating |
34 |
> |
* concurrently with an <tt>addAll</tt> operation might view only some |
35 |
> |
* of the added elements. |
36 |
|
* |
37 |
|
* <p>This class and its iterator implement all of the |
38 |
|
* <em>optional</em> methods of the {@link Collection} and {@link |