[Python-Dev] epoll implementation
Jean-Paul Calderone
exarkun at divmod.com
Fri May 26 20:57:05 CEST 2006
On Fri, 26 May 2006 13:31:33 -0400, Ross Cohen <rcohen at snurgle.org> wrote:
>On Fri, May 26, 2006 at 01:10:30PM -0400, Jean-Paul Calderone wrote:
>> Of course, if there is a volunteer to maintain and support an extension module, that's better than nothing. PyEpoll is missing a couple features I would like to see - the size of the epoll set is hard-coded to FD_SETSIZE, for example: while this makes little difference to Python 2.4.3 (since you cannot use sockets with fileno >= FD_SETSIZE at all in that version of Python), it is a serious limitation for other versions of Python. Similarly, the number of events to retrieve when invoking epoll_wait() is also hardcoded to FD_SETSIZE. Real applications often want to tune this value to avoid being overwhelmed by io events.
>
>It is not true that this module limits the number of file descriptors to
>FD_SETSIZE. You were probable looking at the number of file descriptors
>returned by the epoll call, which is already limited by FD_SETSIZE because
>of the size of event array. In any case, this can be made tunable.
Woops, you're right, of course. I forgot that the argument to epoll_create is only a hint, not a limit. Sorry about that.
Jean-Paul
More information about the Python-Dev
mailing list