delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2008/07/28/00:32:55

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
Message-ID: <488D4BD1.8090006@cwilson.fastmail.fm>
Date: Mon, 28 Jul 2008 00:32:17 -0400
From: Charles Wilson <cygwin AT cwilson DOT fastmail DOT fm>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.1.16) Gecko/20080708 Thunderbird/2.0.0.16 Mnenhy/0.7.5.666
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: cygwin python: subprocess.Popen().stdout + threads == hang
References: <1216915906 DOT 17422 DOT 1265168403 AT webmail DOT messagingengine DOT com> <20080726171613 DOT GA3296 AT tishler DOT net>
In-Reply-To: <20080726171613.GA3296@tishler.net>
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

Jason Tishler wrote:

> As my README indicates, Cygwin Python has some pthreads-related issues.
> Given that you don't observe this behavior on other platforms, it seems
> like this is a Cygwin specific problem.  So, I don't think raising an
> upstream bug report will help.
> 
> I would like to help with this problem, but my expectation is it will
> take many hours or days to debug.  I've been in the Cygwin and Python
> pthreads-related code before and it is not a fun place to be. :,)
> Sorry, but the reality is I don't have the time to help with a problem
> of this difficulty.

Understandable. I wish it were otherwise, but no worries. I actually 
worked around the problem in my real app by avoiding threads entirely -- 
at least in this context -- on unix (incl. cygwin), since 
select.select() can be used with regular file descriptors on those 
platforms. I only really needed threads+subprocess.Popen.stdout in this 
context on win32, because win32 select.select() works only with sockets.

It's funny. I dimly recall running into something almost the same -- 
maybe exactly the same -- about two years ago. At that time I just 
completely punted and dropped cygwin from the list of supported 
platforms...I like my current workaround better that /that/. <g>

FWIW, I did try a few recent thread-related patches from python SVN -- 
some from the release25-maint branch and some I backported from trunk 
(like this: http://bugs.python.org/issue874900). No joy there, 
unfortunately.

--
Chuck



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019