On Wed, Mar 23, 2011 at 04:38:15PM +0000, Jon TURNEY wrote: >On 23/03/2011 15:00, Christopher Faylor wrote: >> On Wed, Mar 23, 2011 at 11:31:46AM +0000, Jon TURNEY wrote: >>> On 22/03/2011 20:08, Christopher Faylor wrote: >>>> On Tue, Mar 22, 2011 at 08:53:34PM +0100, V??clav Haisman wrote: >>>>> Jon TURNEY wrote, On 22.3.2011 20:29: >>>>>> >>>>>> python seems to be built with the default value of FD_SETSIZE, which is >>>>>> only 64 on cygwin. >>>>> Is this not because of the inherent limitation of >>>>> WaitForMultipleObjects() call? >>>> >>>> Yep. Without a rewrite, it's a hard limit to Cygwin's select(). >>> >>> Please read my email more closely. I am not saying "python select() is >>> limited to waiting on 64 fds or less", I am saying "python select() is >>> limited to waiting on fd which are less than 64" >> >> I forgot to add one bit of data. Unless you go out of your way to >> change it, Cygwin's select can't wait for an fd > 63. It's basically a >> bit mask. So, there are two limitations: 1) the number of handles that >> you can wait for with WaitForMultipleObjects() and 2) the size of >> Cygwin's fd_set. > >Yes, I know fd_set is implemented as a bitmap. It's size is controlled by >FD_SETSIZE. That is the whole point of the patch in the original mail.
I actually did see that last night and then promptly forgot it. I assume you know that this greately increases the likelihood that select() will fail with an EINVAL. Maybe python somehow deals gracefully with that. cgf -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple