服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

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


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

扫描关注微信公众号