是否可以在Java虚拟机中处理POSIX信号?
至少SIGINT和SIGKILL应该是完全独立于平台的.
JVM自己响应信号.有些会导致JVM正常关闭,包括运行关闭挂钩.其他信号将导致JVM在不运行关闭挂钩的情况下中止.
使用Runtime.addShutdownHook(Thread)添加关闭挂钩.
我不认为JDK提供了一种在Java应用程序中处理信号的官方方法.但是,我确实找到了这篇IBM文章,该文章描述了使用一些未记录的sun.misc.Signal
类来做到这一点.这篇文章的历史可以追溯到2002年,使用的是JDK 1.3.1,但我确认sun.misc.Signal
该类仍然存在于JDK 1.6.0中.