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

Alan Bateman alanb at openjdk.org
Fri Jan 5 17:04:25 UTC 2024


On Fri, 5 Jan 2024 16:51:40 GMT, Jaikiran Pai <jpai 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.
>
> src/java.base/share/classes/sun/nio/ch/Interruptible.java line 38:
> 
>> 36:      * is invoked while holding the Thread's interrupt lock. It will typically record
>> 37:      * that the I/O operation has been interrupted so that it can be coordinated with
>> 38:      * {@code postInterrupt} when it called after releasing the Thread's interrupt
> 
> Should have been "when it is called" instead of  "when it called"

Thanks, this is typo there.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/17219#discussion_r1443123893


More information about the core-libs-dev mailing list