.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();
}
}

}
}

上一篇:java大数总结【转】


下一篇:hive类型转化错误,会错误提示指定分区参数