RFR: 8351565: Implement JEP 502: Stable Values (Preview) [v33]

Alan Bateman alanb at openjdk.org
Wed Apr 2 13:48:12 UTC 2025


On Wed, 2 Apr 2025 13:22:44 GMT, Per Minborg <pminborg at openjdk.org> wrote:

>> Implement JEP 502.
>> 
>> The PR passes tier1-tier3 tests.
>
> Per Minborg has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Add info that Map#values and Map#entrySet are stable

src/java.base/share/classes/java/lang/StableValue.java line 455:

> 453:      *         provided to the {@link #orElseSet(Supplier)} method.
> 454:      */
> 455:     boolean trySet(T content);

I assume the intent is that trySet can only return at most true once but the current wording suggests that two threads racing to set the same content would return true, or sequential calls to trySet to set the same content would return true. Does this need to be clarified?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/23972#discussion_r2024863484


More information about the core-libs-dev mailing list