What does “proactive” IO mean? Is it the same as other async-io systems in rust like tokio/async-std/smol or different?
It uses the proactor pattern (https://en.wikipedia.org/wiki/Proactor_pattern) instead of the reactor pattern, which the others use. This pattern fits the way io-uring and IOCP work better, as both are completion-, and not poll-based.
We are seeing so many new async I/O libraries for Rust it’s practically a parody at this point.
This is substantially different, as it allows transparent use of io-uring (modern Linux Async IO) instead of epoll.
Interesting, thanks for pointing that out