On Thu, 3 Apr 2025 08:39:47 GMT, Per Minborg <pminb...@openjdk.org> wrote:

>> src/java.base/share/classes/java/lang/StableValue.java line 377:
>> 
>>> 375:  *
>>> 376:  * <h2 id="thread-safety">Thread Safety</h2>
>>> 377:  * The content of a stable value is guaranteed to be set at most once. 
>>> If competing
>> 
>> Suggestion:
>> 
>>  * The contents of a stable value is guaranteed to be set at most once. If 
>> competing
>
> I think it should be "content" as only one element can be set?

I'm definitely not an expert here, so I'll defer to someone more knowledgable :)

>> src/java.base/share/classes/java/lang/StableValue.java line 384:
>> 
>>> 382:  * (e.g. {@linkplain #trySet(Object) trySet()})
>>> 383:  * {@linkplain java.util.concurrent##MemoryVisibility 
>>> <em>happens-before</em>}
>>> 384:  * any subsequent read operation (e.g. {@linkplain #orElseThrow()}) 
>>> that is successful.
>> 
>> Suggestion:
>> 
>>  * any successful read operation (e.g. {@linkplain #orElseThrow()}).
>
> A read operation that is made well before a write operation does mean the 
> write operation happens before the read operation so I wanted to capture that 
> using the work "subsequent". Did I miss something here?

I just thought it awkward to establish order (happens-before) by using a word 
like "subsequent" (which implies order).

>> src/java.base/share/classes/java/lang/StableValue.java line 567:
>> 
>>> 565:      * <p>
>>> 566:      * The provided {@code original} supplier is guaranteed to be 
>>> successfully invoked
>>> 567:      * at most once even in a multi-threaded environment. Competing 
>>> threads invoking the
>> 
>> There's a bit of a mix of "at most once" and "at-most-once". I'm fine with 
>> either but I prefer uniformity in spelling :)
>
> If "at most once" is an adjective then it should be spelled with dashes, 
> otherwise not. 
> 
> "The method can be invoked at most once and hence It is an 
> invoke-at-most-once method"

That sounds fair! 👍

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

PR Review Comment: https://git.openjdk.org/jdk/pull/23972#discussion_r2026617309
PR Review Comment: https://git.openjdk.org/jdk/pull/23972#discussion_r2026619405
PR Review Comment: https://git.openjdk.org/jdk/pull/23972#discussion_r2026620361

Reply via email to