当Java程序停止时停止外部程序
我正在执行一个与 Java 一起运行的外部程序,使用以下方法:
Process p = Runtime.getRuntime().exec("/path/to/binary");
当我停止 Java 应用程序时,外部程序继续运行,但我希望它也停止。
I'm executing an external program which runs alongside Java using this:
Process p = Runtime.getRuntime().exec("/path/to/binary");
When I stop the Java application, the external program continues to run but I want this to stop too.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
要触发关闭,您可以向 Java 应用程序添加关闭挂钩。请参阅运行时。 addShutdownHook()。
要实现关闭,您可以向外部进程发出优雅停止的请求,或者调用 Process.destroy()
To trigger the shutdown, you could add a shutdown hook to your Java application. See Runtime.addShutdownHook().
To effect the shutdown, you could either communicate to the external process a request to stop gracefully, or call Process.destroy()
使用关闭挂钩: http://download.oracle .com/javase/1.4.2/docs/guide/lang/hook-design.html
use shutdown hook : http://download.oracle.com/javase/1.4.2/docs/guide/lang/hook-design.html