delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2002/01/08/12:32:54

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Message-ID: <3C3B2D03.F0C73746@oculustech.com>
Date: Tue, 08 Jan 2002 12:31:47 -0500
From: Timothy Wall <twall AT oculustech DOT com>
Reply-To: twall AT oculustech DOT com
Organization: Oculus Technologies
X-Mailer: Mozilla 4.74 (Macintosh; U; PPC)
X-Accept-Language: en
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Control-C, SIGINT, ConsoleCtrlHandler...

I'm trying to get some consistent behavior under the command shell and cygwin,
tho' without much luck so far.  I'd like to know if there's a canonical
SIGINT/SIGTERM handling convention for console processes (taking cygwin into
account, or barring that for invocations in cmd.exe only).

The important thing for my program is that it perform certain cleanup
operations on exit (normally taken care of with a signal handler attached to
SIGINT/SIGTERM).

Under the cmd.exe, the handler usually gets called when it's installed with
signal() or with SetConsoleCtrlHandler (there have been cases where it does
not, but I can't reliably reproduce them...).

Under bash, however, it looks like the consolectrlhandler never even gets a
chance to finish before the process is wiped.  Installing with signal() also
seems that the process is wiped before the cleanup gets a chance to run.

(the handler sets a flag which the main thread uses to determine that it's
time to exit).




--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.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