On Fri, 18 Apr 2025 12:47:37 GMT, Jorn Vernee <jver...@openjdk.org> wrote:

>> Per Minborg has updated the pull request incrementally with one additional 
>> commit since the last revision:
>> 
>>   Address comments on original vs underlying
>
> src/java.base/share/classes/java/lang/StableValue.java line 389:
> 
>> 387:  * successful invocation. Since stable functions and stable collections 
>> are built on top
>> 388:  * of {@linkplain StableValue#orElseSet(Supplier) orElseSet()} they too 
>> are
>> 389:  * thread safe and guarantee at-most-once-per-input invocation.
> 
> I think you should drop the note here about stable collections being built on 
> top of `orElseSet`. This is an interesting implementation detail, but not 
> directly relevant for the specification, and some that we might want to 
> change in the future.
> 
> I suggest just specifying the behavior of stable collections directly, 
> without mentioning how they are implemented.

Good catch. I now say "Since stable functions and stable collections are built 
on top
of the same principles as {@linkplain StableValue#orElseSet(Supplier) 
orElseSet()} they
too are thread safe and guarantee at-most-once-per-input invocation."

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

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

Reply via email to