首页 > 其他分享 >delphi 互斥量,只允许运行一个实例

delphi 互斥量,只允许运行一个实例

时间:2023-05-05 21:25:02浏览次数:35  
标签:end 自定义 delphi 互斥 实例 运行

效果图:

 代码超简单的:

procedure TFrmLogin.FormCreate(Sender: TObject);
var Fmutex: THandle; begin//创建一个命名的互斥量,确保同一时间只有一个实例在运行 //第三个参数是自定义的,随便取的,但一定要是唯一的标识 FMutex := CreateMutex(nil,True,'MyDelphiAppMutex'); if (FMutex <> 0) and (GetLastError = ERROR_ALREADY_EXISTS) then begin //另一个实例已经在运行,关闭当前实例 dm.ShowMessageFadeOut('只能运行一个实例');//这是个自定义的消息提示,可替换 ExitProcess(0);//这里不会触发任何关闭或者销毁事件 end; end;

 

标签:end,自定义,delphi,互斥,实例,运行
From: https://www.cnblogs.com/yoooos/p/17375376.html

相关文章

  • 修改数据库实例、修改数据库、修改数据表、修改数据,编码、排序规则
    查实例字符集showvariableslike'%character%';查实例排序规则showvariableslike'%collation%';查库语句showcreatedatabasetest;查表排序规则showtablestatusfromtestlike'test_saas_single';查字段排序规则showfullcolumnsfromtest_saas_single;......
  • SpringBoot中策略模式+工厂模式业务实例(接口传参-枚举类查询策略映射关系-执行不同策
    场景设计模式-策略模式在Java中的使用示例:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/127622238上面讲了策略模式在Java中的使用示例。下面看一个在SpringBoot中的实际使用示例。业务场景:有多个煤矿,信号灯有多个厂家/规则,每个煤矿对应一种信号灯。需要编......
  • SpringCloud实例
    前言:此文档是跟着课程来的,主要是为了熟悉SpringCloud和kubernetes是怎么结合的,后续用在测试cicd流水线上。1.基础环境1.1.java环境配置jdk1.8链接:下载mkdir-p/usr/local/src/jdk; cd/usr/local/src/jdktar-zxvfjdk-8u221-linux-x64.tar.gz-C/usr/localvim/e......
  • 实例046 数组的下标界限
    以下是使用Java文本框控件实现Java数组的下标界限完整代码,包括详细注释:importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;publicclassTestextendsJFrameimplementsActionListener{//定义窗口中需要用到的组件privateJTextFieldtextField......
  • 实例 042 获取一维数组最小值
      你可以使用以下代码来获取一维数组中的最小值:int[]arr={5,3,9,1,7};intmin=arr[0];for(inti=1;i<arr.length;i++){if(arr[i]<min){min=arr[i];}}System.out.println("最小值为:"+min);  在上面的代码中,我们首先初始......
  • unity 之简单的实例(clone)对象池
    usingSystem;usingSystem.Collections.Generic;usingUnityEngine;publicclassGameObjectPoolEntity{publicQueue<GameObject>QueueList;publicstringName;publicGameObjectPool0bj;}publicclassQGGameObjectPool:IDisposable......
  • 关于java中的多态和对实例化对象的一些理解
    java面向对象三大特征即为:继承封装多态。而多态需要三大必要条件。分别是:继承、方法重写、父类引用指向子类对象。我们先一个一个来理解。1、首先是继承和重写。这个很简单。因为多态就是建立在不同的重写之上的。也就是说多态就是在使用着一个方法的不同重写。而重写又是依赖着......
  • 实例化对象 A a = new A();
    "new"在Java中代表实例化的意思,Aa=newA()代表实例化了一个对象a,这个对象a属于A类.可以认为A是一个抽象概念,对象a是一个实体(存储于内存),等式左边实际上就是用类A定义对象a,等式右边就是创造对象a的过程.Aa;   是定义一个类型为A的对象。new实例化a=n......
  • 22 同步与互斥(八)总结
    1实现的基础同步与互斥的基本操作:spinlock;semaphore;mutex而实现上述操作的基本是基于:原子操作;中断屏蔽;抢占屏蔽来实现的对于spinlock;semaphore;mutex等相关的操作,基本实现都是lock时,放回成功表示上锁成功。否则就需要等待对应unlock后才能返回成功,进入临界区2彼此的关联与区......
  • 21 同步与互斥(七)互斥量
    1简介mutex相对于semaphore更加高效。mutex在面对SMP时,如果mutex在别的CPU上运行,而“我”是唯一在等待这个mutex的进程。此时“我”是不会去休眠的,而是原地spin2mutex的结构和API2.1mutex结构structmutexmy_mutex;structmutex{ /*1:unlocked,0:locked,negativ......