我目前正在JAVA中构建一个只能执行一次的应用程序.所以我目前正在使用一个锁文件,我在其中写入当前执行的PID.
因此,每当此应用程序启动时,它将打开文件(如果存在)并尝试检测文件中写入的PID是否实际正在运行.
这可以防止在解锁文件之前我的应用程序崩溃的问题.
我需要这个在Windows(XP,7或8)和Linux(所有用户都在基于debian的发行版)上工作.
这里有一些代码可以让您更好地了解我想要做的事情:
//get the PID from the file
int pidValue = new FileReader(file).read();
//get the OS type
String os = System.getProperty("os.name").toLowerCase();
//Check PID depending of OS type
if( os.contains("nux") || os.contains("nix") ){
/*
* Check PID on Linux/Unix
*/
} else if ( os.contains("win") ) {
/*
* Check PID on Windows
*/
}
我试图找到关于这个主题的文档,但我找不到任何有用的东西.
非常感谢你.