X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Date: Sun, 10 May 2009 16:21:32 -0400 From: Christopher Faylor To: cygwin AT cygwin DOT com Subject: Re: How to detect a cygwin thread? Message-ID: <20090510202132.GB25909@ednor.casa.cgf.cx> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <9f8a01cd0905091706s6944a639m8da2f943212cc178 AT mail DOT gmail DOT com> <9f8a01cd0905100245m16838bb9w3c6e494d4a03a4cb AT mail DOT gmail DOT com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.16 (2007-06-09) 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 Sun, May 10, 2009 at 06:53:21PM +0000, Mark Geisert wrote: >So it looks like your original question could be restated as "Is there >an API in Cygwin that allows an application to enumerate all Cygwin >threads in the app, including internal Cygwin threads?". I don't know >of any but maybe somebody else on the list does. The closest API to it would be a call to cygwin_internal(CW_GETTHREADNAME, ); Where is a DWORD denoting the thread as per GetCurrentThreadId, etc. If the return value is "unknown ()" then Cygwin doesn't know about it. Otherwise it is a important cygwin thread. I haven't checked to see if some actual Cygwin threads show as with "unknown ..." though. Check the source code for more details but be advised that the it's entirely possible that this interface may not work at all. This is an as-is undocumented interface and we make no guarantees that its behavior will remain consistent across releases. cgf -- 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/