我有一个要在Windows计算机上运行的程序,我想使用Runtime.getRuntime().addShutdownHook()
正常关闭程序并等待所有线程结束后再退出。
我可以使用pid从Powershell或批处理脚本触发此关闭。据我所知,java程序是作为后台进程运行的,据我所知没有办法将Ctrl-C命令的等效内容提供给该进程。
我尝试过的事情:
Stop-Process
在不触发关机钩的情况下终止了进程
taskkill
返回了一个错误,指出该进程无法终止,并且必须强制终止
taskkill /f
在不触发关机钩的情况下终止了进程
如何在Windows上触发Java正常关闭?我已经读过一种可以通过JVM发送信号的方法,但是我还找不到在Windows上执行此操作的方法。