Package io.prometheus.client
Class Striped64.Cell
java.lang.Object
io.prometheus.client.Striped64.Cell
- Enclosing class:
Striped64
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
FieldsModifier and TypeFieldDescriptionprivate static final AtomicLongFieldUpdater
<Striped64.Cell> (package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
-
Constructor Summary
Constructors -
Method Summary
-
Field Details
-
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
-
-
Constructor Details
-
Cell
Cell(long x)
-
-
Method Details
-
cas
final boolean cas(long cmp, long val)
-