Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com
Date: Wed, 16 Jun 2004 02:05:23 -0400
From: Christopher Faylor <cgf-no-personal-reply-please@cygwin.com>
To: cygwin@cygwin.com
Subject: Re: Ctrl-Z fails to suspend Windows programs
Message-ID: <20040616060523.GA24441@coe.casa.cgf.cx>
Reply-To: cygwin@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
References: <87n035b3kn.fsf@eu.citrix.com> <20040615120142.GA30776@trixie.casa.cgf.cx> <40CEED71.7020407@luukku.com> <20040615131311.GB30776@trixie.casa.cgf.cx> <40CFD6E5.1070709@luukku.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <40CFD6E5.1070709@luukku.com>
User-Agent: Mutt/1.4.1i

On Wed, Jun 16, 2004 at 08:13:09AM +0300, Jani tiainen wrote:
>Christopher Faylor wrote:
>>On Tue, Jun 15, 2004 at 03:37:05PM +0300, Jani tiainen wrote:
>>
>>>Christopher Faylor wrote:
>>>
>>>>On Tue, Jun 15, 2004 at 09:58:16AM +0100, John Cooper wrote:
>>>>
>>>>>Is it a known limitation that "native" Windows programs cannot be
>>>>>suspended?
>>>>
>>>>Yes.  Window programs do not understand cygwin signals.
>>>
>>>Thats true for cygwin part.  Native programs still can be
>>>suspended/resumed but not by cygwin (or shell that is running and
>>>waiting finishing of active process).
>>
>>
>>It is true for any part that Windows programs do not understand cygwin
>>signals.
>>
>>There is no way to reliably suspend a Windows programs.
                     ^^^^^^^^
>
>Yes there is ( piece of pseudo code):
>
>For Each Thread THREAD_Y in Process PROCESS_X
>	Call_Win32API SuspendThread(THREAD_Y.Handle)
>Next
>
>NOTE: In Win2k and later you need THREAD_SUSPEND_RESUME rights for 
>particular thread.

I do have a fair amount of experience in this area.  SuspendThread
cannot be used to *reliably* suspend a native windows app.  If you
suspend the program at the wrong time you get hangs and other unwanted
behavior.
--
Christopher Faylor			spammer? ->	aaaspam@sourceware.org
Cygwin Co-Project Leader				aaaspam@duffek.com
TimeSys, Inc.

--
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/

