【发布时间】:2016-03-28 19:58:08
【问题描述】:
我正在为Stilts stomp server 做一些 Poc。需要防止服务器 jvm 终止并通过另一个 jvm 来完成。这是一个代码sn-p
public static void main(String[] args) {
try {
log.debug("Starting server...");
StompServer<MockStompProvider> server = new StompServer<MockStompProvider>();
server.setStompProvider( new MockStompProvider() );
server.addConnector( new InsecureConnector() );
server.start();
while (true) {
Thread.sleep(200000);
}
} catch (Exception ex) {
log.error("Exception ", ex);
}
}
有两个要求。
- 有没有其他方法可以在不使用
while循环的情况下阻止上述jvm终止。 - 我想使用
java -jar server.jar -- stop之类的命令停止jvm,例如jetty 之类的服务器。码头使用端口并侦听停止请求的信号。有什么简单的方法吗。
第二个选项可以是使用 AnchorFile,在启动 jvm 时创建文件并监视文件是否存在,然后使用 stop jvm 删除该文件。
【问题讨论】:
标签: java jvm shutdown-hook