linux – kill -3实际上终止了一个java进程吗?或者只是生成一个线程转储?

前端之家收集整理的这篇文章主要介绍了linux – kill -3实际上终止了一个java进程吗?或者只是生成一个线程转储?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
CentOS 5.9

如果我运行kill -3< java process pid>实际发生了什么?根据this red hat article,我知道生成了Java Thread Dump,但进程终止了吗?它似乎不是基于我的测试:

[root@fooBox ~]# kill -3 14559

[root@fooBox ~]# service foo status
foo (pid 14559) is running...

换句话说:我可以通过这种方式收集线程转储而不会影响服务吗?

解决方法

希望kill -3不会终止JVM进程.

在stacktrace集合期间,线程转储会对服务产生轻微影响,尤其是在运行数千个线程的情况下.

请注意,如果使用-Xrs标志,则JVM不再具体处理SIGQUIT信号,然后该信号可能会终止该进程,除非某些本机代码中存在备用处理程序.

猜你在找的Linux相关文章