Various Random things (Was: Java 8 RFC 7189139: BigInteger's staticRandom field can be a source of bottlenecks)
Brian Burkhalter
brian.burkhalter at oracle.com
Tue Sep 3 23:52:04 UTC 2013
On Sep 3, 2013, at 4:46 PM, Doug Lea wrote:
> I assume you mean to change line 898:
>
> if (rnd == null) {
> rnd = ThreadLocalRandom.current();; // was: getSecureRandom();
> }
Yes.
> This seems fine in terms of sufficient RNG quality and better
> performance. Also in terns of being for sure thread-safe
> even though it uses no locks/sync: there are no possible async
> or parallel calls from entry into this method, so using
> thread-local one is fine.
Thanks for the comments. One question I have is whether this change would still be needed if
public boolean isProbablePrime(int certainty, Random rnd) {}
were added.
Brian
More information about the core-libs-dev
mailing list