正常关闭emacs守护程序为什么很重要?

时间:2020-04-23 03:57:46

标签: ubuntu emacs daemon

herehere,他们讨论如何优雅地关闭emacs守护进程。它为什么如此重要?答案之一是建议使用pkill -TERM emacs,它可以完成任务,但显然不能正常运行。不正常关闭emacs守护程序有什么问题?如果我不这样做会怎样?

谢谢

1 个答案:

答案 0 :(得分:1)

答案之一是pkill -TERM emacs,它可以完成任务,但显然不能正常工作。

尽管我会推荐使用进程ID,而不是pkill,但应该是一个正常的关闭过程。手册说:

通常通过上级调用“ kill-emacs”功能 命令“ C-x C-c”(“ save-buffers-kill-terminal”)。 *注意 (emacs)退出::。如果Emacs收到 “ SIGTERM”或“ SIGHUP”操作系统信号(例如,当 控制终端已断开连接),或者接收到“ SIGINT” 在批处理模式下运行时发出信号(*注意批处理模式::)。

此行为在Emacs 24.1中进行了介绍(该更新在您链接到的问答之后)。

**退出更改

***如果Emacs收到SIGTERM或SIGHUP,则现在调用`kill-emacs', 或者它以批处理方式接收到SIGINT信号。

***`kill-emacs-hook'现在也以批处理模式运行。 添加到`kill-emacs-hook'的第三方代码应检查它们是否 在批处理模式下做正确的事。


关于为什么您不希望非正常关机,这实际上不是Emacs的问题。在没有任何机会清理的情况下终止进程始终应该是最后的选择。不难想象,例如,如果某个过程在写入文件的过程中被杀死,可能会导致哪些问题。

相关问题