> In preparation for when virtual threads can unmount while holding a monitor > or unmount when blocking on monitorenter, the implementation of > VirtualThread's interrupt method is refactored to avoid parking/blocking > while holding the Thread's interrupt lock. The implementations of > sun.nio.ch.Interruptible are refactored to close/wakeup the > InterruptibleChannel/Selector after releasing the interrupt lock. There is a > lot of test coverage for async close and interrupt, no additional tests are > added.
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: - Make sun.nio.ch.Interruptible's javadoc a bit clearer - Merge - Merge - Initial commit ------------- Changes: - all: https://git.openjdk.org/jdk/pull/17219/files - new: https://git.openjdk.org/jdk/pull/17219/files/e402582d..634cd876 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=17219&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=17219&range=00-01 Stats: 4903 lines in 422 files changed: 2589 ins; 930 del; 1384 mod Patch: https://git.openjdk.org/jdk/pull/17219.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/17219/head:pull/17219 PR: https://git.openjdk.org/jdk/pull/17219