概述
bool mutexCreated;
var mutex = new Mutex(false, "sigletonAppMutex", out mutexCreated);
参数说明
参数位置 | 参数 | 说明 |
1 | false | |
2 | sigletonAppMutex | 设置互斥的名称 |
3 | mutexCreated | 该名称的互斥是否存在 |
特点
1.可以跨进程,这是个系统级别的互斥。
2.用于控制程序不能打开两次。
3.当日也可以做普通的互斥使用。(锁:mutex.WaitOne();/释放:mutex.ReleaseMutex();)
1.代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace ConsoleApp5
{
class Program
{
static void Main(string[] args)
{
bool mutexCreated;
var mutex = new Mutex(false, "sigeltonAppMutex", out mutexCreated);
if (!mutexCreated) {
Console.WriteLine("程序已打开");
Console.WriteLine("Exting.");
Console.ReadKey();
return;
}
Console.WriteLine("hello word");
Console.ReadKey();
}
}
}
2.运行效果
2.1第一次打开
2.2 第二次打开