所以我试图让一个Java程序在调用main方法时开始运行,并在调用相同的 main方法时停止运行(来自另一个进程)。所以我们的目标是用第二个进程杀死第一个进程,然后自杀。
我尝试的是以下内容:
taskkill
和Unix的kill
。
这是实现目标的最简单方法。但是Windows中的进程始终为javaw.exe
,并且调用taskkill
将终止其他JVM。
ServerSocket
或DatagramSocket
,告诉第一个进程自杀。
这也有效,但我觉得这对于这么简单的工作来说只是浪费。
文件锁
问题在于,并不总是授予创建文件的权限(无论出于何种原因,某人决定在只读文件夹中使用该程序)。
我想我可能只是错过了一些明显的东西。任何建议将不胜感激。