详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt334

Perl语言专家Randal Schwartz在一篇短文里这样写:

no no no.不要使用kill -9.

它没有给进程留下善后的机会:

1) 关闭socket链接

2) 清理临时文件

3) 将自己将要被销毁的消息通知给子进程

4) 重置自己的终止状态

等等。

通常,应该发送15,等一两秒钟,如果没效果,发送2,如果还不行,发送1。如果还不行,那你应该把那个程序删掉,因为那个程序写的太烂了!

不要使用kill -9。不要用收割机来修剪花盆里的花。

总之,在使用kill -9前,你应该先使用kill -15,给目标进程一个清理善后工作的机会。(进程也许无法捕捉或直接忽略SIGKILL信号,但它们可以,通常也是能够捕捉SIGTERM信号的。)如果你不留机会让进程完成清理工作,它们会留下一些不完整的文件或状态,当系统重启时,程序将无法理解这些状态。

strace/truss,ltrace和gdb都是查看一个卡住的进程因何卡住的好工具。(Solaris里的truss -u非常好用;)Solaris里还有一些非常有用的/proc相关的工具,有一些已经被移植到了Linux上。

慎用kill -9,kill -15的作用的更多相关文章

  1. Linux下对后台进程通过kill传递信号不起作用的问题

    在阅读APUE信号一章时,我遇到Linux下对后台进程通过kill传递信号不起作用的问题 具体情形与如下链接中的老兄一致: http://bbs.csdn.net/topics/390335913?p ...

  2. 【转载】Linux kill, killall, kill -9

    1) 查看进程的方法:  ps -ef  或者 ps aux root     15087  0.0  0.0      0     0 ?        S    23:31   0:00 [kwo ...

  3. linux命令kill和kill -9的区别

    linux命令kill和kill -9的区别 2018年04月13日 16:53:07 坠入苦海销尘垢 阅读数 2854   转载自https://www.cnblogs.com/liuhouhou/ ...

  4. ps -ef|grep详解 、kill与kill -9的区别

    ps -ef|grep详解 ps命令将某个进程显示出来 grep命令是查找 中间的|是管道命令 是指ps命令与grep同时执行 PS是LINUX下最常用的也是非常强大的进程查看命令 grep命令是查找 ...

  5. 【Linux常用命令】Linux kill, killall, kill -9,

    参考链接 https://blog.csdn.net/zong596568821xp/article/details/77899454 kill + PID kill -9 + PID  加上-9 是 ...

  6. [进程]kill 9和15,以及pkill, killall

    转自:https://www.cnblogs.com/liuhouhou/p/5400540.html 大家对kill -9 肯定非常熟悉,在工作中也经常用到.特别是你去重启tomcat时.可是多半看 ...

  7. kill与kill -9的区别

    有时候我们使用kill无法杀掉一个进程,但是用kill -9却可以,why? 首先看一下kill的功能,man手册对kill描述如下: KILL(1) Linux User's Manual KILL ...

  8. kill 与 kill -9(面试中问道的知识点)

    转载自:http://www.2cto.com/os/201305/215267.html 需要特别说明的是,SIGKILL和SIGSTOP这两个信号既不能被应用程序捕获,也不能被操作系统阻塞或忽略. ...

  9. What is the difference between Kill and Kill -9 command in Unix?

    w difference kill -9 pid and kill pid command - Ask Ubuntu  https://askubuntu.com/questions/791841/d ...

随机推荐

  1. oracle 审计日志清理

      --进入审计日志目录: cd $ORACLE_BASE/admin/$ORACLE_SID/adump --删除3个月前的审计文件: find ./ -type f -name "*.a ...

  2. 46. leetcode 500. Keyboard Row

    500. Keyboard Row Given a List of words, return the words that can be typed using letters of alphabe ...

  3. Javascript DOM 编程艺术———总结-1

    第一章: 1.DOM:是一套对文档内容进行抽象和概念化的方法,是一种API. 2.W3C对DOM的定义:一个与系统平台和编程语言无关的借口程序和脚本可以通过这个接口动态的访问和修改文档内容,结构和样式 ...

  4. UICollectionView基本使用详解(OC)

    概述 UICollectionView是从iOS6开始引入使用的,目前应用非常广泛,很牛逼!老外的博客也是这么说的(传送门) ## 与UITableView的初步比较 UITableView应该是大家 ...

  5. 再起航,我的学习笔记之JavaScript设计模式05(简单工程模式)

    我的学习笔记是根据我的学习情况来定期更新的,预计2-3天更新一章,主要是给大家分享一下,我所学到的知识,如果有什么错误请在评论中指点出来,我一定虚心接受,那么废话不多说开始我们今天的学习分享吧! 前几 ...

  6. 轻松学JVM(二)——内存模型、可见性、指令重排序

    上一篇我们介绍了JVM的基本运行流程以及内存结构,对JVM有了初步的认识,这篇文章我们将根据JVM的内存模型探索java当中变量的可见性以及不同的java指令在并发时可能发生的指令重排序的情况. 内存 ...

  7. php并发加锁示例

    在工作项目中,会遇到一些php并发访问去修改一个数据问题,如果这个数据不加锁,就会造成数据的错误.下面我将分析一个财务支付锁的问题.希望对大家有所帮助. 1 没有应用锁机制 1.1 财务支付简化版本代 ...

  8. Fiddler设置代理(PC和Android)

    Fiddler设置 打开Fiddler,进入Tools--->Fiddler Options,勾选以下信息:   OK,就配置完成了.   PC端设置: 以火狐为例,打开选项--->高级 ...

  9. WEB测试常见BUG

    翻页 翻页时,没有加载数据为空,第二页数据没有请求 翻页时,重复请求第一页的数据 翻页时,没有图片的内容有时候会引用有图片的内容       2.图片数据为空 图片数据为空时,会保留为空的图片数据位置 ...

  10. Spring框架解析

    在生活中我们会有很多依赖关系,我要写一个笔记,就要有本子,笔,两种物品,还有当事人我,一共三个对象. 1.本子:可以再上面写字,这是他是属性,可被书画: 2.笔:可以在很多东西上写写画画:这也是他的属 ...