如何在条件为真时停止和恢复正在运行的程序
本文关键字:恢复 程序 运行 条件 | 更新日期: 2023-09-27 18:06:54
我正在使用c#从早上6点到下午6点运行发送短信程序。我想在下午6点的时候停止这个过程,在第二天早上7点的时候重新开始这个过程。下面的代码不起作用。当程序运行时,它不会在时间是下午6点时停止。请帮我解决这个问题。谢谢你
new Thread(delegate()
{
while (DateTime`me.Now.Hour.ToString("HH") != "18")
{
sms.endSMS();
Thread.Sleep(20000);}
Thread.Sleep(500000);
}).Start();
考虑使用任务调度程序,如Windows任务调度程序或Cron,在一天中的计划时间启动和停止进程
我建议使用Windows任务调度程序和计时器进行此操作。但是,如果您想要指定代码的答案,您可以使用下面的代码。
Thread timerThread = new Thread(()=>
{
while(true)
{
if(DateTime.Now.Hour >= 6 && DateTime.Now.Hour <= 17)
{
sms.SendSms();
Thread.Sleep(300000);
}
else
{
Thread.Sleep(3600000);
}
}});
timerThread.Priority = ThreadPriority.Normal;
timerThread.IsBackground = true;
timerThread.Start();