.net中判断该应用程序是否已经启动,防止重复启动,监控程序启动是否正常
//获取配置文件中的需要监控项
private static string MonitorServe = ConfigurationSettings.AppSettings["MonitorServe"];
static void Main(string[] args)
{
StartMonitor();
}
/// <summary>
/// 开启监控
/// </summary>
private static void StartMonitor()
{
int ProceedingCount = 0;
string[] strMonitor = MonitorServe.Split('$');
for (int i = 0; i < strMonitor.Length; i++)
{
if (!string.IsNullOrEmpty(strMonitor[i]))
{
Process[] Processes;
Processes = Process.GetProcessesByName(strMonitor[i]);
foreach (Process IsProcedding in Processes)
{
if (IsProcedding.ProcessName == strMonitor[i])
{ ProceedingCount += 1; }
}
if (ProceedingCount < 1)
{
Console.WriteLine("服务已开启");
}
//关闭重复启动项
if (ProceedingCount > 1)
{
foreach (Process myProcess in Processes)
{
myProcess.Kill();
}
}
}
}
最新文章
- NOIP2010关押罪犯[并查集|二分答案+二分图染色 | 种类并查集]
- Android开发自学笔记(Android Studio)&mdash;4.界面编程与View组件简单介绍
- C# 发送邮件,QQ企业邮箱测试成功
- 【elasticsearch】python下的使用
- 缓存插件 EHCache 对象缓存(Spring)
- 面向对象 理解 C#复习
- LINUX下查看php运行的用户
- 网站WAF的检测
- ANDROID_MARS学习笔记_S04_007_从服务器获取微博数据时间线
- VMware linux 增加根目录空间 (使用图形分区工具gparted LiveCd)
- WPF Template模版之DataTemplate与ControlTemplate的关系和应用【二】
- vue-购物车
- css怎样让背景充满整个屏幕
- VNC配置
- 封装LocalStorage.js
- C++ template一些体悟(3)
- KVM源代码框架
- Thinkphp部署
- MySQL Workbench--Window安装试用
- Java监听器原理及实例