< prev index next >
src/java.base/share/classes/java/util/concurrent/ThreadLocalRandom.java
Print this page
8225490: Miscellaneous changes imported from jsr166 CVS 2019-09
Reviewed-by: martin, alanb
*** 1051,1072 ****
static final String BAD_RANGE = "bound must be greater than origin";
static final String BAD_SIZE = "size must be non-negative";
// Unsafe mechanics
private static final Unsafe U = Unsafe.getUnsafe();
! private static final long SEED = U.objectFieldOffset
! (Thread.class, "threadLocalRandomSeed");
! private static final long PROBE = U.objectFieldOffset
! (Thread.class, "threadLocalRandomProbe");
! private static final long SECONDARY = U.objectFieldOffset
! (Thread.class, "threadLocalRandomSecondarySeed");
! private static final long THREADLOCALS = U.objectFieldOffset
! (Thread.class, "threadLocals");
! private static final long INHERITABLETHREADLOCALS = U.objectFieldOffset
! (Thread.class, "inheritableThreadLocals");
! private static final long INHERITEDACCESSCONTROLCONTEXT = U.objectFieldOffset
! (Thread.class, "inheritedAccessControlContext");
/** Rarely-used holder for the second of a pair of Gaussians */
private static final ThreadLocal<Double> nextLocalGaussian =
new ThreadLocal<>();
--- 1051,1072 ----
static final String BAD_RANGE = "bound must be greater than origin";
static final String BAD_SIZE = "size must be non-negative";
// Unsafe mechanics
private static final Unsafe U = Unsafe.getUnsafe();
! private static final long SEED
! = U.objectFieldOffset(Thread.class, "threadLocalRandomSeed");
! private static final long PROBE
! = U.objectFieldOffset(Thread.class, "threadLocalRandomProbe");
! private static final long SECONDARY
! = U.objectFieldOffset(Thread.class, "threadLocalRandomSecondarySeed");
! private static final long THREADLOCALS
! = U.objectFieldOffset(Thread.class, "threadLocals");
! private static final long INHERITABLETHREADLOCALS
! = U.objectFieldOffset(Thread.class, "inheritableThreadLocals");
! private static final long INHERITEDACCESSCONTROLCONTEXT
! = U.objectFieldOffset(Thread.class, "inheritedAccessControlContext");
/** Rarely-used holder for the second of a pair of Gaussians */
private static final ThreadLocal<Double> nextLocalGaussian =
new ThreadLocal<>();
< prev index next >