Class Striped64.Cell

  • Enclosing class:
    Striped64

    static final class Striped64.Cell
    extends java.lang.Object
    Padded variant of AtomicLong supporting only raw accesses plus CAS. The value field is placed between pads, hoping that the JVM doesn't reorder them. JVM intrinsics note: It would be possible to use a release-only form of CAS here, if it were provided.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static java.util.concurrent.atomic.AtomicLongFieldUpdater<Striped64.Cell> CAS_VALUE  
      (package private) long p0  
      (package private) long p1  
      (package private) long p2  
      (package private) long p3  
      (package private) long p4  
      (package private) long p5  
      (package private) long p6  
      (package private) long q0  
      (package private) long q1  
      (package private) long q2  
      (package private) long q3  
      (package private) long q4  
      (package private) long q5  
      (package private) long q6  
      (package private) long value  
    • Constructor Summary

      Constructors 
      Constructor Description
      Cell​(long x)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      (package private) boolean cas​(long cmp, long val)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • p0

        volatile long p0
      • p1

        volatile long p1
      • p2

        volatile long p2
      • p3

        volatile long p3
      • p4

        volatile long p4
      • p5

        volatile long p5
      • p6

        volatile long p6
      • value

        volatile long value
      • q0

        volatile long q0
      • q1

        volatile long q1
      • q2

        volatile long q2
      • q3

        volatile long q3
      • q4

        volatile long q4
      • q5

        volatile long q5
      • q6

        volatile long q6
      • CAS_VALUE

        private static final java.util.concurrent.atomic.AtomicLongFieldUpdater<Striped64.Cell> CAS_VALUE
    • Constructor Detail

      • Cell

        Cell​(long x)
    • Method Detail

      • cas

        final boolean cas​(long cmp,
                          long val)