如果我优雅地终止一个脚本(没有-9),这个脚本正在运行另一个脚本,而这个脚本又在运行java,那么java进程会收到级联的终止信号吗?
发布于 2012-03-27 21:30:34
在这种情况下,我看到java不能正常关闭,并归init所有(pid 1)。我以前已经修复过这个问题,方法是在java进程启动后记录它的pid,然后在bash脚本内的信号处理程序中发送kill -15。
jpid=
trap_intr()
{
[ ! -z "$jpid" ] && kill $jpid
}
trap trap_intr INT TERM
java -cp ... foo &
jpid=$!
wait更新:我忘了把java进程放在后台,让bash脚本等待$!
https://stackoverflow.com/questions/9890181
复制相似问题