Issue #11056 has been updated by Eric Wong.

File io_wait_readable-no-nread-experimental.patch added

v2 patch with experimental IO#wait_readable(.., wait_only: bool)
to avoid FIONREAD.


----------------------------------------
Feature #11056: [PATCH] lib/net/*: use io/wait methods instead of IO.select
https://bugs.ruby-lang.org/issues/11056#change-52110

* Author: Eric Wong
* Status: Open
* Priority: Normal
* Assignee: Eric Wong
----------------------------------------
lib/net/*: use io/wait methods instead of IO.select

io/wait is expected to work on any platform where sockets are
supported.  io/wait methods uses fewer allocations and uses
ppoll internally under Linux for better performance on
high-numbered FDs.

[ruby-core:35572] describes the performance advantage of ppoll
on high-numbered FDs.

* lib/net/protocol.rb (rbuf_fill): use IO#wait_*able
* lib/net/http/generic_request.rb (wait_for_continue): ditto


I'll commit in a few days unless there are objections.


---Files--------------------------------
0001-lib-net-use-io-wait-methods-instead-of-IO.select.patch (2.3 KB)
io_wait_readable-no-nread-experimental.patch (5.03 KB)


-- 
https://bugs.ruby-lang.org/