Unix Java虚拟机信号

Unix Java虚拟机信号,unix,jvm,signals,Unix,Jvm,Signals,我有一个java进程,这是一个信号关闭。这是其中一个SIGTERM,SIGINT,SIGHUP,因为关闭挂钩正在运行 我不明白为什么我们会收到信号。这个过程在ubuntu上运行,我在dmesg中找不到任何东西表明操作系统发送了信号 还有其他地方可以传递这些信息吗?是否有任何工具可以连接到PID以获取有关信号的信息 提前谢谢,所以我在系统日志中找到了OOM消息。我希望它在dmesg中。我的错误您如何知道进程因信号而关闭?我们发现这是一个错误。要回答您的问题@apangin,将执行关闭挂钩。所以我知

我有一个java进程,这是一个信号关闭。这是其中一个SIGTERM,SIGINT,SIGHUP,因为关闭挂钩正在运行

我不明白为什么我们会收到信号。这个过程在ubuntu上运行,我在dmesg中找不到任何东西表明操作系统发送了信号

还有其他地方可以传递这些信息吗?是否有任何工具可以连接到PID以获取有关信号的信息


提前谢谢,所以我在系统日志中找到了OOM消息。我希望它在dmesg中。我的错误

您如何知道进程因信号而关闭?我们发现这是一个错误。要回答您的问题@apangin,将执行关闭挂钩。所以我知道这是一个信号。不,关闭钩子是在VM退出时执行的,这可能不仅仅是因为一个信号。特别是,调用
System.exit()
或所有非守护进程线程(您的情况)的死亡也会导致执行关闭挂钩。在我的回答中,我指出我们在syslog中发现了OOM错误。但是的,这不是关闭的信号。虚拟机存在,因为它无法分配更多内存