X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-1.9 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,TW_FD,UNPARSEABLE_RELAY X-Spam-Check-By: sourceware.org X-Yahoo-SMTP: jenXL62swBAWhMTL3wnej93oaS0ClBQOAKs8jbEbx_o- Date: Wed, 23 Mar 2011 11:00:38 -0400 From: Christopher Faylor To: cygwin AT cygwin DOT com Subject: Re: python select() is limited to fds < 64 Message-ID: <20110323150038.GE13862@ednor.casa.cgf.cx> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <4D88F89B DOT 6000308 AT dronecode DOT org DOT uk> <4D88FE3E DOT 2070607 AT sh DOT cvut DOT cz> <20110322200804 DOT GA22409 AT ednor DOT casa DOT cgf DOT cx> <4D89DA22 DOT 9010404 AT dronecode DOT org DOT uk> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4D89DA22.9010404@dronecode.org.uk> User-Agent: Mutt/1.5.20 (2009-06-14) Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com 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. 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