gpt4 book ai didi

unix - 'Killed' 和 'Terminated' 的区别

转载 作者:行者123 更新时间:2023-12-03 20:00:10 24 4
gpt4 key购买 nike

我只是在 sleep 过程中测试终止开关标志。

首先我尝试用 -15 杀死它

 xtechkid@ubuntu:~/Desktop/expermiments$ ps cax | grep 10005
10005 pts/2 S+ 0:00 sh
xtechkid@ubuntu:~/Desktop/expermiments$ kill -15 10005

这个过程被终止了
 xtechkid@ubuntu:~/Desktop/expermiments$ sh testscript.sh
This is a script which sleeps for few seconds ..
Terminated

然后我用 - 9 杀死了它
 xtechkid@ubuntu:~/Desktop/expermiments$ ps -ef | grep testscript.sh
xtechkid 10059 9852 0 13:48 pts/2 00:00:00 sh testscript.sh
xtechkid 10064 10007 0 13:48 pts/4 00:00:00 grep --color=auto testscript.sh
xtechkid@ubuntu:~/Desktop/expermiments$ kill -9 10059

这个过程被杀死了
 xtechkid@ubuntu:~/Desktop/expermiments$ sh testscript.sh
This is a script which sleeps for few seconds ..
Killed

有什么不同 ?

最佳答案

“终止”信号 SIGTERM 是一个可以在程序中拦截的信号。通常打算在后台运行的进程会捕获此信号并启动关闭进程,从而导致干净退出。 'kill' 信号 SIGKILL 不能被拦截。当这被发送到一个进程时,它将导致该程序的突然终止。

例如,当您关闭或重新启动计算机时,通常会首先向正在运行的进程发送一个 SIGTERM,如果它们支持,则允许它们以干净的方式退出。然后,几秒钟后,一个 SIGKILL 被发送到仍在运行的进程,以便强制释放正在使用的资源(例如正在使用的文件),并且关闭序列可以继续(例如卸载文件系统)

关于unix - 'Killed' 和 'Terminated' 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19206124/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com