zoukankan      html  css  js  c++  java
  • C# Mutex to make sure only one unique application instance started

    
    
    static void MutexDemo2()
            {
                string assName = Assembly.GetEntryAssembly().FullName;
                bool createdNew;
                using (var mutex = new Mutex(false, assName, out createdNew))
                {
                    if (!createdNew)
                    {
                        Console.WriteLine("The app in running!");
                        Console.ReadLine();
                    }
                    else
                    {
                        Console.WriteLine("Welcome!");
                        Console.ReadLine();
                    }
                }
            }
    
    
    
    using System;
    using System.Threading.Tasks;
    using System.Reflection;
    using System.Threading;
    using System.Windows.Forms;
    
     static void Main(string[] args)
            {
                MutexDemoBool();
                Console.ReadLine();
            }
    
            static void MutexDemo()
            {
                string assemblyName = Assembly.GetEntryAssembly().FullName;             
                var mutex = new Mutex(false, assemblyName);
    
                if (!mutex.WaitOne(0, true))
                {
                    MessageBox.Show("Unable to run multiple instances of this program.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    Console.WriteLine("Welcome");
                    Console.ReadLine();
                }            
            }
    
            static void MutexDemoBool()
            {
                string assemblyName = Assembly.GetEntryAssembly().FullName;
                bool isFirstInstance;
                var mutex = new Mutex(false, assemblyName,out isFirstInstance);
                if(!isFirstInstance)
                {
                    MessageBox.Show("Unable to run multiple instances of this program.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    Console.WriteLine("Welcome");
                    Console.ReadLine();
                }           
            }
  • 相关阅读:
    iOS微信支付集成
    iOS支付宝支付集成
    JavaScript原生实现《贪吃蛇》
    安装tensorflow的最简单方法(Ubuntu 16.04 && CentOS)
    Eclipse 插件管理
    settings.xml 文件配置
    Spring MVC 起步
    机器学习: KNN--python
    Python: PS 图像调整--亮度调整
    计算机设计思想 —— 代理(proxy)
  • 原文地址:https://www.cnblogs.com/Fred1987/p/11834297.html
Copyright © 2011-2022 走看看