X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-2.6 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,TW_FD X-Spam-Check-By: sourceware.org Message-ID: <4D8A21F7.1020206@dronecode.org.uk> Date: Wed, 23 Mar 2011 16:38:15 +0000 From: Jon TURNEY User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.15) Gecko/20110303 Thunderbird/3.1.9 MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: python select() is limited to fds < 64 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> <20110323150038 DOT GE13862 AT ednor DOT casa DOT cgf DOT cx> In-Reply-To: <20110323150038.GE13862@ednor.casa.cgf.cx> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: 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 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. -- 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