如果控制台应用程序 运行 比预期长,则发送电子邮件给开发人员

If console application is running longer than expected then email to developer

我有一个用 C# 编写的控制台应用程序,计划 运行 每 1 小时。

申请通常需要不到 10 分钟。

如果应用程序 运行 超过 15 分钟,我希望在不破坏代码的情况下收到来自应用程序的电子邮件。

从最少的代码开始的最佳方法是什么。

制作一个运行 15 分钟的计时器。

期间结束后,它应该检查一个条件(完成,是,否) 如果未完成 -> 邮件。

您可以在构造函数中设置一个计时器

System.Timers.Timer aTimer = new System.Timers.Timer();

public static void Main()
{        
    aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);
    aTimer.Interval = 1000 * 60 * 15;  //1 second * 60 seconds in a minute * 15 minutes
    aTimer.Enabled = true;
}

然后在时间流逝事件中 运行 您发送电子邮件的代码

private static void OnTimedEvent(object source, ElapsedEventArgs e)
{
   //Code which sends an email
   aTimer.Enabled = false;     
}