判断当前程序是否正在运行
2008-01-05 08:24:30 来源:WEB开发网
/**
* 通过文件锁来判定程序是否正在运行
* @return 假如正在运行返回true,否则返回false
*/
PRivate static boolean isRunning()
{
boolean rv=false;
try {
//
String os_name=System.getProperty("os.name");
//指定文件锁路径
String path=null;
if(os_name.indexOf("Windows")>-1)
{
//假如是Windows操作系统
path=System.getProperty("user.home")+System.getProperty("file.separator");
}
else
{
path="/usr/temp/";
}
File dir=new File(path);
if(!dir.exists())
{
dir.mkdirs();
}
//程序名称
String applicationName="sms";
RandomaccessFile fis = new RandomAccessFile(path+applicationName+".lock","rw");
FileChannel lockfc = fis.getChannel();
FileLock flock = lockfc.tryLock();
if(flock == null) {
System.out.println("程序正在运行.");
rv=true;
}
} catch (FileNotFoundException e1) {
e1.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
return rv;
}
更多精彩
赞助商链接