On Thu, 18 Mar 2021 01:27:26 GMT, Valerie Peng <[email protected]> wrote:
>> src/java.base/share/classes/sun/security/jca/JCAUtil.java line 86:
>>
>>> 84: SecureRandom result = def;
>>> 85: if (result == null) {
>>> 86: synchronized (JCAUtil.class) {
>>
>> Could this lock be avoided if set the value in the Providers update (or when
>> the providers list is updated)?
>
> Well, then we have to pay the cost of "new SecureRandom()" at every provider
> list update when it may not be needed. It's hard to say which way is
> better... I thought about it and it seems more reasonable to only pay the
> cost when the SecureRandom object is needed.
It makes sense to me.
-------------
PR: https://git.openjdk.java.net/jdk/pull/3018