- 使用互斥量 Mutex (命名空间:System.Threading)
- 互斥锁是同步对象,同一时间有且仅有一个线程可以获取它。
- 互斥锁可以适用于一个共享资源每次只能被一个线程访问。
- 相关的函数
- 创建一个处于未获取状态的互斥锁
- Public Mutex()
static class Program { /// <summary> /// 应用程序的主入口点。 /// </summary> [STAThread] static void Main() { //判断当前程序是否已经开启 bool falg = false; System.Threading.Mutex mutex = new System.Threading.Mutex(true, "Demo1",out falg); if (falg) //程序未开启 { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new HL_login()); } else //程序已经开启 { Model.PubDev.ShowMessage("程序已经打开!"); System.Threading.Thread.Sleep(3000); Environment.Exit(1); //退出当前程序 } } }