async-io icon indicating copy to clipboard operation
async-io copied to clipboard

Use native I/O when the scheduler is supported.

Open ioquatix opened this issue 3 years ago • 5 comments

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.

ioquatix avatar Apr 10 '21 08:04 ioquatix

Seems like io-event already dropped support for Ruby 3.0. So this can be merged?

paddor avatar Dec 28 '23 19:12 paddor

I'm still considering the options of deprecating this entire gem vs trying to update it.

ioquatix avatar Dec 28 '23 21:12 ioquatix

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.

paddor avatar Dec 30 '23 17:12 paddor

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.

paddor avatar Jan 03 '24 02:01 paddor

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.

paddor avatar Jan 05 '24 16:01 paddor