On 5 April 2011 20:06, Žiga Seilnacht <ziga.seilna...@gmail.com> wrote: > I think that the main reason for PortableGtkReactor being used on Windows > is due to glib's IO channels limitations on Windows. You can only have 63 > channels in the event loop at the same time due to g_poll's use of > MsgWaitForMultipleObject.
The trouble is, PortableGtkReactor is just out-and-out unusable for certain applications. In my case, it turned a 3 minute comms session into a 25 hour session — OR, I could have my app completely max out the CPU while it's running. Neither is workable in any realistic context. But I'm pretty sure I don't need > 63 I/O channels open at once, unless I'm missing something about the inner workings of Twisted. (I mean no offense, I can see why it has to work the way it does... but its weakness shows up in exactly the kind of protocol I need to use.) > In addition, IO channels are quite buggy on Windows when used for sockets, > see the comment at the top of the glib/giowin32.c file in the glib source > for a list of issues. E.g. I suspect that the second problem described in: > > https://bugzilla.gnome.org/show_bug.cgi?id=357674 > > is responsible for Twisted's ticket #3371, because a similar problem > can be seen with win32eventreactor (ticket #4950), which also uses > WSAEventSelect for socket monitoring. Hmm. I may be in over my head here. But I won't give up just yet, since it *would* be nice to be able to use PyGTK for the things I need to do. Thanks for the info, Jason _______________________________________________ Twisted-Python mailing list Twisted-Python@twistedmatrix.com http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python