ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/jsr166e/ConcurrentHashMapV8.java
(Generate patch)

Comparing jsr166/src/jsr166e/ConcurrentHashMapV8.java (file contents):
Revision 1.22 by jsr166, Sat Sep 10 19:33:14 2011 UTC vs.
Revision 1.23 by jsr166, Sun Sep 11 04:25:00 2011 UTC

# Line 152 | Line 152 | public class ConcurrentHashMapV8<K, V>
152       * node of a bin list itself as a lock, using plain "synchronized"
153       * locks. These save space and we can live with block-structured
154       * lock/unlock operations. Using the first node of a list as a
155 <     * lock does not by itself suffice though: When a node is locked,
155 >     * lock does not by itself suffice though. When a node is locked,
156       * any update must first validate that it is still the first node,
157       * and retry if not. Because new nodes are always appended to
158       * lists, once a node is first in a bin, it remains first until
# Line 291 | Line 291 | public class ConcurrentHashMapV8<K, V>
291       * special, and do not contain user keys or values.  Otherwise,
292       * keys are never null, and null val fields indicate that a node
293       * is in the process of being deleted or created. For purposes of
294 <     * read-only, access, a key may be read before a val, but can only
294 >     * read-only access, a key may be read before a val, but can only
295       * be used after checking val.  (For an update operation, when a
296       * lock is held on a node, order doesn't matter.)
297       */
# Line 771 | Line 771 | public class ConcurrentHashMapV8<K, V>
771       * valid.
772       *
773       * Internal traversals directly access these fields, as in:
774 <     * {@code while (it.next != null) { process(nextKey); it.advance(); }}
774 >     * {@code while (it.next != null) { process(it.nextKey); it.advance(); }}
775       *
776       * Exported iterators (subclasses of ViewIterator) extract key,
777       * value, or key-value pairs as return values of Iterator.next(),

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines