首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果我杀了运行脚本运行java的脚本?

如果我杀了运行脚本运行java的脚本?
EN

Stack Overflow用户
提问于 2012-03-27 21:09:22
回答 1查看 208关注 0票数 1

如果我优雅地终止一个脚本(没有-9),这个脚本正在运行另一个脚本,而这个脚本又在运行java,那么java进程会收到级联的终止信号吗?

EN

回答 1

Stack Overflow用户

发布于 2012-03-27 21:30:34

在这种情况下,我看到java不能正常关闭,并归init所有(pid 1)。我以前已经修复过这个问题,方法是在java进程启动后记录它的pid,然后在bash脚本内的信号处理程序中发送kill -15。

代码语言:javascript
复制
jpid=

trap_intr()
{
   [ ! -z "$jpid" ] && kill $jpid
}

trap trap_intr INT TERM

java -cp ... foo &
jpid=$!
wait

更新:我忘了把java进程放在后台,让bash脚本等待$!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9890181

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档