On Sun, Nov 4, 2012 at 8:00 AM, Ben Darnell email@example.com wrote:
On Sat, Nov 3, 2012 at 3:06 PM, Guido van Rossum firstname.lastname@example.org wrote:
FWIW, I've been studying other event loops. It's interesting to see the similarities (and differences) between e.g. the tulip eventloop, pyftpd's ioloop, Tornado's IOLoop, and 0MQ's IOLoop. The latter two look very similar, except that 0MQ makes the poller pluggable, but generally there are lots of similarities between the structure of all four. Twisted, as usual, stands apart. :-)
Pyzmq's IOLoop is actually a fork/monkey-patch of Tornado's, and they have the same pluggable-poller implementation (In the master branch of Tornado it's been moved to the PollIOLoop subclass).
I was beginning to suspect as much. :-)
Have you had the time to look at tulip's eventloop? I'd love your feedback: http://code.google.com/p/tulip/source/browse/polling.py
Also, Richard has a modified version that supports IOCP, which changes the APIs around quite a bit. (Does Tornado try anything with IOCP? Does it even support Windows?) Any thoughts on this vs. my version? https://bitbucket.org/sbt/tulip-proactor/changeset/c64ff42bf0f2679437838ee77...