RFR: 8330465: Stable Values and Collections (Internal) [v5]

Per Minborg pminborg at openjdk.org
Thu May 16 07:18:09 UTC 2024


On Wed, 15 May 2024 16:19:05 GMT, Chen Liang <liach at openjdk.org> wrote:

>> Per Minborg has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Switch to monomorphic StableValue and use lazy arrays
>
> src/java.base/share/classes/jdk/internal/lang/stable/StableValueImpl.java line 403:
> 
>> 401:                     stable.computeIfUnset(supplier);
>> 402:                 } catch (Throwable throwable) {
>> 403:                     final Thread.UncaughtExceptionHandler uncaughtExceptionHandler =
> 
> Does this exception handling differ from the default one for threads? If not, I think we can safely remove this catch block, as all exceptions are just propagated and computeIfUnset doesn't declare any checked exception.

Nice catch. This will reduce complexity:


            @Override
            public void run() {
                stable.computeIfUnset(supplier);
                // Exceptions are implicitly captured by the tread's
                // uncaught exception handler.
            }

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/18794#discussion_r1602743924


More information about the hotspot-compiler-dev mailing list