判断当前程序是否正在运行

互联网 | 编辑: uker编辑2 2007-04-11 00:30:00转载

通过文件锁来判断程序是否正在运行 * @return 如果正在运行返回true,否则返回false

/**
* 通过文件锁来判断程序是否正在运行
* @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;
}

如果想了解更多相关信息以及详细咨询,欢迎点击中英网http://www.uker.net/,或发email至:echo@uker.net,UKer.net资深编辑将为您详细解答。

相关阅读

每日精选

点击查看更多

首页 手机 数码相机 笔记本 游戏 DIY硬件 硬件外设 办公中心 数字家电 平板电脑