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