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

Reply via email to