On Tue, 13 Jan 2026 15:29:10 GMT, Alan Bateman <[email protected]> wrote:
> The I/O Poller used to support virtual threads doing blocking networking I/O > has been significantly refactored in the loom repo. There are several > improvements that should be brought to main line: > > 1. New poller mode that uses a read poller per carrier, this is beneficial in > some workloads. > 2. Better cleanup/recovery in the event if a file descriptor or memory can't > be allocated during initializatio. > 3. NativeThread changed to cache native thread ID and avoid JNI call to > current0 for each blocking I/O op. > > The changes have been in the loom repo for a long time, this is why the > copyright header is updated to 2025 (not 2026) in some cases. > > Testing: tier1 + tier2. src/java.base/share/classes/sun/nio/ch/NativeDispatcher.java line 88: > 86: } > 87: // dup2 and signal platform threads > 88: implPreClose(fd, reader, writer); Can you explain why implPreClose() is called here always, where previously it was only called when reader or writer were platform threads? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/29195#discussion_r2769061417
