On Nov 3, 2011, at 7:40 PM, Tobias Oberstein wrote:
> Regarding the broader picture: I cannot say I understand what you say
> completely.
>
> "maximum file descriptor pollable by select()"
>
> Is this *nix in general?
>
> Does that only apply to select.select?
Yep, only to select.select. Search around for FD_SETSIZE for more information.
> Or also: select.poll(), select.epoll(), select.kqueue() ?
But those may not be available consistently, so you shouldn't hard-code it to
use one of those either :).
> How would implementing an IReadDescriptor circumvent the problem? By not
> using select(), but poll/epoll/kqeue?
It circumvents the problem by allowing whatever mechanism Twisted is using for
multiplexing, rather than always using select(). So you still have to select a
reactor that actually supports more than FD_SETSIZE sockets.
> In any case: we're running FreeBSD, so epoll() is out.
>
> Is there even a kqueue-based Twisted reactor?
Yes... ish. More detail here: <http://twistedmatrix.com/trac/ticket/1918>.
-glyph
_______________________________________________
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python