Each call to Waker::wake writes to the eventfd, which is too annoying. This PR provides a faster path. When the waker is on the same thread, no need to write to the eventfd.
The enable_poll switch of proactor builder provides compatibility to custom event loops, which may poll the io-uring fd in other frameworks. When the switch is enabled, the fast path is disabled.
Each call to
Waker::wake
writes to the eventfd, which is too annoying. This PR provides a faster path. When the waker is on the same thread, no need to write to the eventfd.The
enable_poll
switch of proactor builder provides compatibility to custom event loops, which may poll the io-uring fd in other frameworks. When the switch is enabled, the fast path is disabled.