src/java.base/share/classes/java/util/concurrent/ConcurrentSkipListMap.java
Print this page
rev 12972 : 8140606: Update library code to use internal Unsafe
Reviewed-by: duke
*** 532,542 ****
return new AbstractMap.SimpleImmutableEntry<K,V>(key, vv);
}
// Unsafe mechanics
! private static final sun.misc.Unsafe U = sun.misc.Unsafe.getUnsafe();
private static final long VALUE;
private static final long NEXT;
static {
try {
--- 532,542 ----
return new AbstractMap.SimpleImmutableEntry<K,V>(key, vv);
}
// Unsafe mechanics
! private static final jdk.internal.misc.Unsafe U = jdk.internal.misc.Unsafe.getUnsafe();
private static final long VALUE;
private static final long NEXT;
static {
try {
*** 612,622 ****
final boolean unlink(Index<K,V> succ) {
return node.value != null && casRight(succ, succ.right);
}
// Unsafe mechanics
! private static final sun.misc.Unsafe U = sun.misc.Unsafe.getUnsafe();
private static final long RIGHT;
static {
try {
RIGHT = U.objectFieldOffset
(Index.class.getDeclaredField("right"));
--- 612,622 ----
final boolean unlink(Index<K,V> succ) {
return node.value != null && casRight(succ, succ.right);
}
// Unsafe mechanics
! private static final jdk.internal.misc.Unsafe U = jdk.internal.misc.Unsafe.getUnsafe();
private static final long RIGHT;
static {
try {
RIGHT = U.objectFieldOffset
(Index.class.getDeclaredField("right"));
*** 3594,3604 ****
p.helpDelete(b, p.next);
}
}
// Unsafe mechanics
! private static final sun.misc.Unsafe U = sun.misc.Unsafe.getUnsafe();
private static final long HEAD;
static {
try {
HEAD = U.objectFieldOffset
(ConcurrentSkipListMap.class.getDeclaredField("head"));
--- 3594,3604 ----
p.helpDelete(b, p.next);
}
}
// Unsafe mechanics
! private static final jdk.internal.misc.Unsafe U = jdk.internal.misc.Unsafe.getUnsafe();
private static final long HEAD;
static {
try {
HEAD = U.objectFieldOffset
(ConcurrentSkipListMap.class.getDeclaredField("head"));