-
Notifications
You must be signed in to change notification settings - Fork 642
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Loop-less zmq.asyncio #894
Comments
The implementation of loop-less transport is here: https://github.com/aio-libs/aiozmq/blob/master/aiozmq/core.py#L667 While it's based on The key point is not adding writer but getting notification file descriptor by The tricky part of implementation is: after every read/write operation the file descriptor should be requested again for upcoming events and if there are events to process From my understanding it's because |
Having dealt with integrating the edge-triggered FD in an eventloop in zmq.green, I don't want to be responsible for maintaining another implementation that relies on it. I've pushed for a level-triggered separate read/write FD API in libzmq for years, so if that ever happens I will happily drop the Fortunately, aiozmq exists and takes on that challenge, so please feel free to use that. I don't view zmq.asyncio as a replacement for it at all, just one simple implementation of AIO-compatible use of zmq. |
+1 I threw out a polling suggestion in aio-libs/aiohttp#1223. I'm not an expert. Having pyzmq capable of operating with the base asyncio loop would be pretty dreamy. |
Hi guys,
Is it possible to re-work the
zmq.asyncio
package and remove the need of usage ofzmq.asyncio.ZMQEventLoop
?Say if I use zmq in my aiohttp application in combination with uvloop I can't just import and use
zmq.asyncio
easily. So that this forces me to use third-party libraries like aiozmq instead of the native pyzmq.Also please take a look at aio-libs/aiohttp#1092 (comment) describing specific issues with
zmq.asyncio.ZMQEventLoop
.I'm not proficient in this particular area therefore I delegate the next discussion to @asvetlov and other guys who know this area well.
If someone is able to work on this, it would be really nice! And as @asvetlov said he can point on required changes.
The text was updated successfully, but these errors were encountered: