[JDK-8334574](https://bugs.openjdk.org/browse/JDK-8334574) tracks the Windows 
issue of events getting "lost" where there is more than one AFD_POLL 
outstanding for a socket. This can cause impact in scenarios where one virtual 
thread blocks reading from a socket and another virtual treads blocks writing 
to the same socket. There is good discussion in 
[wepoll/issues/35](https://github.com/piscisaureus/wepoll/issues/35) about 
this. A future PR may propose a new "poller group" implementation, prototypes 
so far have required bookkeeping that impacts performance.

This PR proposes a change that works around the issue by configuring Windows to 
not have any write poller threads. It would be rare for write to block, esp. if 
SO_SNDBUF is set to a sufficiently large value. If a write op does need to 
block, the write will timed-park and retry until the write succeeds (or fails). 
The change has no impact on other platforms.

---------
- [x] I confirm that I make this contribution in accordance with the [OpenJDK 
Interim AI Policy](https://openjdk.org/legal/ai).

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

Commit messages:
 - Remove debug message
 - Initial commit

Changes: https://git.openjdk.org/jdk/pull/33297/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=33297&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8394217
  Stats: 62 lines in 4 files changed: 39 ins; 0 del; 23 mod
  Patch: https://git.openjdk.org/jdk/pull/33297.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/33297/head:pull/33297

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

Reply via email to