38 |
|
* asynchronous nature of these deques, determining the current number |
39 |
|
* of elements requires a traversal of the elements, and so may report |
40 |
|
* inaccurate results if this collection is modified during traversal. |
41 |
< |
* Additionally, the bulk operations {@code addAll}, |
42 |
< |
* {@code removeAll}, {@code retainAll}, {@code containsAll}, |
43 |
< |
* and {@code toArray} are <em>not</em> guaranteed |
44 |
< |
* to be performed atomically. For example, an iterator operating |
45 |
< |
* concurrently with an {@code addAll} operation might view only some |
46 |
< |
* of the added elements. |
41 |
> |
* |
42 |
> |
* <p>Bulk operations that add, remove, or examine multiple elements, |
43 |
> |
* such as {@link #addAll}, {@link #removeIf} or {@link #forEach}, |
44 |
> |
* are <em>not</em> guaranteed to be performed atomically. |
45 |
> |
* For example, a {@code forEach} traversal concurrent with an {@code |
46 |
> |
* addAll} operation might observe only some of the added elements. |
47 |
|
* |
48 |
|
* <p>This class and its iterator implement all of the <em>optional</em> |
49 |
|
* methods of the {@link Deque} and {@link Iterator} interfaces. |