On Wed, 29 Mar 2023 08:00:36 GMT, Alan Bateman <[email protected]> wrote:
>> JEP 444 proposes to make virtual threads a permanent feature in Java 21. The
>> APIs that were preview APIs in Java 19/20 are changed to permanent and their
>> `@since`/equivalent are changed to 21 (as per the guidance in JEP 12). The
>> JNI and JVMTI versions are bumped as this is the first change in 21 to need
>> the new version number. A lot of tests are updated to drop `@enablePreview`
>> and --enable-preview.
>>
>> There is one API change from Java 19/20, the preview API
>> Thread.Builder.allowSetThreadLocals(boolean) is dropped. This requires an
>> update to the JVMTI GetThreadInfo implementation to read the TCCL
>> consistently.
>>
>> In addition, there are a small number of implementation changes to sync up
>> from the loom fibers branch:
>>
>> - A number of stack frames are `@Hidden` to reduce noise in the stack
>> traces. This exposed a few issues with the stack walker code. More
>> specifically, the cases where end of a continuation falls precisely at the
>> end of the batch, or where the remaining frames are hidden, weren't handled
>> correctly.
>> - The code to emit the JFR jdk.ThreadSleepEvent is refactored so it's in
>> Thread rather than in two classes.
>> - A few robustness improvements for OOME and SOE. There is more to do here,
>> for future PRs.
>> - New system property to print a stack trace when a virtual thread sets its
>> own value of a TL.
>> - ThreadPerTaskExecutor is changed to use FutureTask.
>>
>> Testing: tier1-6.
>
> Alan Bateman has updated the pull request incrementally with one additional
> commit since the last revision:
>
> Fix ThreadSleepEvent again
Looks good.
test/jdk/java/lang/Thread/virtual/TraceVirtualThreadLocals.java line 65:
> 63:
> 64: /**
> 65: * Runs a task in a virutal thread, returning a String with any
> output printed
Suggestion:
* Runs a task in a virtual thread, returning a String with any output
printed
-------------
Marked as reviewed by psandoz (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/13203#pullrequestreview-1364039280
PR Review Comment: https://git.openjdk.org/jdk/pull/13203#discussion_r1152529524