> 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 with a new target base due to a merge 
or a rebase. The incremental webrev excludes the unrelated changes brought in 
by the merge/rebase. The pull request contains four additional commits since 
the last revision:

 - ThreadSleepEvent refactoring
 - Merge
 - Merge
 - Initial sync from fibers branch

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/13203/files
  - new: https://git.openjdk.org/jdk/pull/13203/files/1c62dc8a..7906dbb4

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=13203&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=13203&range=00-01

  Stats: 2112 lines in 47 files changed: 1050 ins; 822 del; 240 mod
  Patch: https://git.openjdk.org/jdk/pull/13203.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/13203/head:pull/13203

PR: https://git.openjdk.org/jdk/pull/13203

Reply via email to