[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Functions in kill-emacs-hook aren't run if emacs gets killed with SI

From: Stefan Monnier
Subject: Re: Functions in kill-emacs-hook aren't run if emacs gets killed with SIGTERM
Date: Wed, 04 Feb 2009 22:34:38 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux)

>> > We may also delay it indefinitely if we run Lisp, because that could
>> > infloop, especially if our internal data structures are unstable.
>> What makes you think our data structures might be unstable when we
>> get SIGTERM?
> Because of what you yourself wrote:
>> AFAIK this signal is only received when some external process
>> decides that Emacs should stop
> An external process can decide that Emacs should stop whenever it
> wants to, and Emacs could be in the middle of GC, for example.

But as I said repeatedly in this thread it's irrelevant, because in
order for it to run kill-emacs-hook, this signal should not be handed
from its signal handler but from the usual input handling, just
like SIGUSRn.  So data-structures should be just fine.

>> > If SIGTERM is used to programmatically shut down Emacs, I think it's
>> > rather a conceptual bug in whatever uses SIGTERM for that purpose.
>> Huh?  SIGTERM is *the canonical way* to programmatically shut down an
>> application via a signal.
>> From _outside_ Emacs, yes.  Which isn't the case here.
> Anyway, Dan suggested a better way long ago, so it's IMO pointless to
> continue this argument.

No, it's an alternative solution to "how do I kill the daemon".
I still think that sending the SIGTERM signal should run
kill-emacs-hook, regardless.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]