zoukankan      html  css  js  c++  java
  • 只启动一个应用程序实例控制类

    using System;
    using System.IO;
    using System.Diagnostics;
    using System.Threading;
    using System.Reflection;
    using System.Runtime.InteropServices;

    namespace Zhengzuo.CSharpCode
    {
        
    /// <summary>
        
    /// 只启动一个应用程序实例控制类
        
    /// </summary>

        public static class SingleInstance
        
    {
            
    private const int WS_SHOWNORMAL = 1;
            [DllImport(
    "User32.dll")]
            
    private static extern bool ShowWindowAsync(IntPtr hWnd, int cmdShow);
            [DllImport(
    "User32.dll")]
            
    private static extern bool SetForegroundWindow(IntPtr hWnd);
            
    //标志文件名称
            private static string runFlagFullname = null;
            
    //声明同步基元
            private static Mutex mutex = null;

            
    /// <summary>
            
    /// static Constructor
            
    /// </summary>

            static SingleInstance()
            
    {
            }


            
    api实现


            
    Mutex实现


            
    设置标志实现
        }


    }
  • 相关阅读:
    python 并发编程 多进程 互斥锁 目录
    python 并发编程 多进程 互斥锁
    python 并发编程 多进程 守护进程
    python 并发编程 多进程 Process对象的其他属性方法 terminate与is_alive name pid 函数
    python 并发编程 多进程 Process对象的其他属性方法 join 方法
    python 并发编程 多进程 目录
    POJ 2253
    POJ 2255
    POJ 2250
    POJ 2248
  • 原文地址:https://www.cnblogs.com/dreign/p/946225.html
Copyright © 2011-2022 走看看