Integrated: 8322829: Refactor nioBlocker to avoid blocking while holding Thread's interrupt lock

Alan Bateman alanb at openjdk.org
Tue Jan 9 07:08:30 UTC 2024


On Tue, 2 Jan 2024 10:21:11 GMT, Alan Bateman <alanb at openjdk.org> wrote:

> 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.

This pull request has now been integrated.

Changeset: 7286f529
Author:    Alan Bateman <alanb at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/7286f5291d6aad290fda778668eeb3a7cbfd8a55
Stats:     143 lines in 6 files changed: 89 ins; 25 del; 29 mod

8322829: Refactor nioBlocker to avoid blocking while holding Thread's interrupt lock

Reviewed-by: jpai

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

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


More information about the core-libs-dev mailing list