原文:https://blog.youkuaiyun.com/huanshanv20008/article/details/6369839
在Program.cs中加入代码
static class Program
{
///
/// 应用程序的主入口点。
///
[STAThread]
static void Main()
{
Application.EnableVisualStyles ();
Application.SetCompatibleTextRenderingDefault ( false );
bool createdNew;//返回是否赋予了使用线程的互斥体初始所属权
System.Threading.Mutex instance = new System.Threading.Mutex ( true, "MutexName", out createdNew ); //同步基元变量
if (createdNew) //赋予了线程初始所属权,也就是首次使用互斥体
{
Application.Run ( new Form1() );
instance.ReleaseMutex ();
}
else
{
MessageBox.Show ( "已经启动了一个程序,请先退出!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Error );
Application.Exit ();
}
}
}
本文介绍了一种在C#中使用Mutex来防止应用程序多实例运行的方法。通过创建Mutex并检查是否是首个拥有者,可以确保同一时间内只有一个实例运行,避免资源冲突。

被折叠的 条评论
为什么被折叠?



