用锁文件的方法来实现只有一个实例运行

原创 2007年09月28日 10:26:00
public class Program
    
...{
        
public Program()
        
...
        }


        
private const string lockfile="mylock.txt";
        

        
public static void Main()
        
...{
            FileStream fs
=null;
            
if(File.Exists(lockfile))
            
...{
                
try
                
...{
                    fs
=File.Open(lockfile,FileMode.Append,FileAccess.Write,FileShare.None); 
                }

                
catch(System.IO.IOException ex)
                
...{
                    MessageBox.Show(
"程序只允许一个实例在运行");
                     
                    System.Environment.Exit(System.Environment.ExitCode);

                }

            }

            
else
            
...{
                fs
=File.Create(lockfile);
            }


            Form1 tes
=new Form1();
            Application.Run(tes);

        }

    }
 

如何让Java程序只运行一个实例

Java没有提供这样的机制。从操作系统的观点来看,一个启动的Java Application仅仅是一 个JVM的运行实例。运行相同Application的两个实例,仅仅是运行两个无关的JVM。 只...
  • yaerfeng
  • yaerfeng
  • 2012年02月16日 15:20
  • 6736

linux shell 确保脚本只有一个运行实例

同时存在多个运行实例对数据进行修改时候会造成很多令人困惑的问题。我们可以在脚本执行开始前创建一个临时文件,如果此文件存在,就表示系统中存在一个运行实例,每个实例在退出之前把临时文件删除,保证新的实例可...
  • carbon06
  • carbon06
  • 2017年12月26日 12:10
  • 63

Python - 让程序只运行一个实例

Python - 让程序只运行一个实例
  • liuyuan_jq
  • liuyuan_jq
  • 2011年04月28日 13:23
  • 2173

如何使一个exe只运行一个实例

方法一: /* 创建全局互斥体,然后在进程启动时检查该互斥体是否已被创建 只需要在InitInstance()中加入 */ ::CreateMutex(NULL, FALSE, "MyA...
  • sunmeng_Alex
  • sunmeng_Alex
  • 2012年12月12日 22:39
  • 1044

只有一个实例运行

//App InitInstance()//============================================== //用应用程序名创建信号量 HANDLE hSem = Cre...
  • onlyou930
  • onlyou930
  • 2009年11月29日 11:34
  • 444

vb只运行一个程序实例

form1.caption="bofang"Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lp...
  • xpnh123
  • xpnh123
  • 2008年05月30日 09:16
  • 421

如何使Shell脚本只有一个实例在运行

LOCKFILE=/tmp/lock.txt if [ -e ${LOCKFILE} ] && kill -0 `cat ${LOCKFILE}`; then echo "already ru...
  • butterfly5211314
  • butterfly5211314
  • 2017年01月21日 11:44
  • 359

Qt程序只运行一个实例

#include QSharedMemory shared("name");//随便填个名字就行 if (shared.attach()) {         return 0; } shared....
  • caoshangpa
  • caoshangpa
  • 2016年04月01日 15:03
  • 2066

【C#】 Debug运行文件只能运行一个(不能打开多个)

C#运行软件的时候,同一Debug可以同时运行多个,,这样就会对项目有影响,直接上代码! using System.Threading; using System.Reflection; p...
  • u014234260
  • u014234260
  • 2017年06月15日 11:04
  • 337

wait和notify来设计阻塞式队列的流程

使用wait和notify来设计一个阻塞式的BlockingQuese队列 设计一个集合LinkedList 设计一个计数器,使用AtomicInterge类来做 创建几个用来表示集合的常量,如最大值...
  • xiaotudouhaidao
  • xiaotudouhaidao
  • 2017年03月06日 19:13
  • 269
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用锁文件的方法来实现只有一个实例运行
举报原因:
原因补充:

(最多只允许输入30个字)