如果控制台应用程序 运行 比预期长,则发送电子邮件给开发人员
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;
}
我有一个用 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;
}