< prev index next >
src/java.base/share/classes/java/util/concurrent/ConcurrentHashMap.java
Print this page
rev 17358 : 8182487: Add Unsafe.objectFieldOffset(Class, String)
Reviewed-by: dsimms
@@ -3307,16 +3307,12 @@
}
private static final Unsafe U = Unsafe.getUnsafe();
private static final long LOCKSTATE;
static {
- try {
LOCKSTATE = U.objectFieldOffset
- (TreeBin.class.getDeclaredField("lockState"));
- } catch (ReflectiveOperationException e) {
- throw new Error(e);
- }
+ (TreeBin.class, "lockState");
}
}
/* ----------------Table Traversal -------------- */
@@ -6379,31 +6375,27 @@
private static final long CELLVALUE;
private static final int ABASE;
private static final int ASHIFT;
static {
- try {
SIZECTL = U.objectFieldOffset
- (ConcurrentHashMap.class.getDeclaredField("sizeCtl"));
+ (ConcurrentHashMap.class, "sizeCtl");
TRANSFERINDEX = U.objectFieldOffset
- (ConcurrentHashMap.class.getDeclaredField("transferIndex"));
+ (ConcurrentHashMap.class, "transferIndex");
BASECOUNT = U.objectFieldOffset
- (ConcurrentHashMap.class.getDeclaredField("baseCount"));
+ (ConcurrentHashMap.class, "baseCount");
CELLSBUSY = U.objectFieldOffset
- (ConcurrentHashMap.class.getDeclaredField("cellsBusy"));
+ (ConcurrentHashMap.class, "cellsBusy");
CELLVALUE = U.objectFieldOffset
- (CounterCell.class.getDeclaredField("value"));
+ (CounterCell.class, "value");
ABASE = U.arrayBaseOffset(Node[].class);
int scale = U.arrayIndexScale(Node[].class);
if ((scale & (scale - 1)) != 0)
throw new Error("array index scale not a power of two");
ASHIFT = 31 - Integer.numberOfLeadingZeros(scale);
- } catch (ReflectiveOperationException e) {
- throw new Error(e);
- }
// Reduce the risk of rare disastrous classloading in first call to
// LockSupport.park: https://bugs.openjdk.java.net/browse/JDK-8074773
Class<?> ensureLoaded = LockSupport.class;
}
< prev index next >