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

Comparing jsr166/src/jsr166x/ConcurrentSkipListMap.java (file contents):
Revision 1.29 by jsr166, Tue Feb 5 20:09:33 2013 UTC vs.
Revision 1.34 by jsr166, Mon Jul 27 03:06:08 2015 UTC

# Line 212 | Line 212 | public class ConcurrentSkipListMap<K,V>
212       * highly contended cases.
213       *
214       * Unlike most skip-list implementations, index insertion and
215 <     * deletion here require a separate traversal pass occuring after
215 >     * deletion here require a separate traversal pass occurring after
216       * the base-level action, to add or remove index nodes.  This adds
217       * to single-threaded overhead, but improves contended
218       * multithreaded performance by narrowing interference windows,
# Line 917 | Line 917 | public class ConcurrentSkipListMap<K,V>
917       * Main insertion method.  Adds element if not present, or
918       * replaces value if present and onlyIfAbsent is false.
919       * @param kkey the key
920 <     * @param value  the value that must be associated with key
920 >     * @param value the value that must be associated with key
921       * @param onlyIfAbsent if should not insert if already present
922       * @return the old value, or null if newly inserted
923       */
# Line 1270 | Line 1270 | public class ConcurrentSkipListMap<K,V>
1270          }
1271      }
1272  
1273 <   /**
1273 >    /**
1274       * Removes first entry; return key or null if empty.
1275       */
1276      K pollFirstKey() {
# Line 2842 | Line 2842 | public class ConcurrentSkipListMap<K,V>
2842      }
2843  
2844      final class DescendingEntryIterator extends EntryIter
2845 <        implements Iterator<Map.Entry<K,V>>  {
2845 >        implements Iterator<Map.Entry<K,V>> {
2846          DescendingEntryIterator() {
2847              initDescending();
2848          }
# Line 2854 | Line 2854 | public class ConcurrentSkipListMap<K,V>
2854      }
2855  
2856      final class DescendingSubMapEntryIterator extends EntryIter
2857 <        implements Iterator<Map.Entry<K,V>>  {
2857 >        implements Iterator<Map.Entry<K,V>> {
2858          final K least;
2859          DescendingSubMapEntryIterator(K least, K fence) {
2860              initDescending(least, fence);
# Line 3112 | Line 3112 | public class ConcurrentSkipListMap<K,V>
3112  
3113          /**
3114           * Returns fence key. Needed by ConcurrentSkipListSet.
3115 <         * @return fence key, or {@code null} of to end
3115 >         * @return fence key, or {@code null} if to end
3116           */
3117          K getFence() {
3118              return fence;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines