我使用以下代码尝试了destroy
和destroyForcibly
-
ProcessHandle currentProcess = ProcessHandle.current();
System.out.println("current process id:"+currentProcess.getPid());
currentProcess.destroyForcibly();
但在两种情况下都是
线程中的异常" main" java.lang.IllegalStateException:destroy of 目前的流程不允许 java.base / java.lang.ProcessHandleImpl.destroyProcess(ProcessHandleImpl.java:308) 在 java.base / java.lang.ProcessHandleImpl.destroyForcibly(ProcessHandleImpl.java:331) 在util.CurrentProcess.main(CurrentProcess.java:18)
答案 0 :(得分:5)
Javadoc on ProcessHandle::current
说:
返回当前进程的
ProcessHandle
。ProcessHandle
不能用于销毁当前流程,请改用System.exit
。