async-io
async-io copied to clipboard
Use native I/O when the scheduler is supported.
Description
This changes the implementation to delegate directly to native I/O where possible. However, there is one bug in the Ruby 3.0.0 (& 3.0.1) release which prevent its use (https://bugs.ruby-lang.org/issues/17527). This has been fixed and should be released in Ruby 3.1 and hopefully back ported to 3.0 eventually.
Types of Changes
- New feature.
- Performance improvement.
Testing
- [x] I added tests for my changes.
- [x] I tested my changes locally.
Seems like io-event already dropped support for Ruby 3.0. So this can be merged?
I'm still considering the options of deprecating this entire gem vs trying to update it.
That's good to know. Would Async::IO::Generic
survive? I'm working on a wrapper class for ZMQ, where an FD is used to detect readability/writability, but not for the actual reading/writing of messages.
Just FYI: The wrapper works fine, but inherits from Async::IO::Generic
. That class will probably have to stay available in one way or another.
Last FYI: I was able to refactor the code so it doesn't need async-io
at all anymore. Sometimes the simple solutions take a while...
Thanks for your support.