24小时计时器不工作[英] 24 hours timer not working

本文是小编为大家收集整理的关于24小时计时器不工作的处理方法,想解了24小时计时器不工作的问题怎么解决?24小时计时器不工作问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

你好....

我正在使用计时器来调用方法并发送每日邮件.但是我给的计时器不工作是

myTimer.Interval = 86400000;
&
myTimer.Interval =1000*60*60*24;

我试过这两个.如果我保持它 15 分钟,它工作正常.


提前谢谢....
编辑添加的代码块,使用改进的解决方案来更新您的问题

void Application_Start(object sender, EventArgs e) { 
// Code that runs on application startup System.Timers.Timer myTimer = new System.Timers.Timer(); // Set the Interval to 5 seconds (5000 milliseconds). myTimer.Interval = 86400000; 
myTimer.AutoReset = true; 
myTimer.Elapsed += new ElapsedEventHandler(myTimer_Elapsed); myTimer.Enabled = true; 
} 
public void myTimer_Elapsed(object source, System.Timers.ElapsedEventArgs e) {
 // use your mailer code
 ScheduleMail objScheduleMail = new ScheduleMail(); 
objScheduleMail.SendSurveyMailDaily();
objScheduleMail.SendSurveyMailWeekly(); 
objScheduleMail.SendSurveyMailMonthly(); 
objScheduleMail.SendCampaignMailDaily(); objScheduleMail.SendCampaignMailWeekly(); objScheduleMail.SendCampaignMailMonthly(); objScheduleMail.SendTemplatMailDaily(); objScheduleMail.SendTemplateMailsMonthly(); objScheduleMail.SendTemplateMailsWeekly(); objScheduleMail.EmailRemainders(); 
}

推荐答案

ASP.NET 没有状态.你不应该依赖应用程序区域中的任何东西,即使你想设置一个 24 小时的计时器,编写一个 Windows 服务来为你发送邮件.

有些网站通常会发送每周/每月的时事通讯.如果您花一些时间对此进行自定义,那么您的网站肯定会受到欢迎.不需要网络应用程序外部的调度程序/服务等......

看到这个:
http://www.stardeveloper.com/articles/display.html?article=2008100201&page=1[^]

我过去提到了一个漂亮的项目,它叫做"TheBeerHouse".而且是很棒的东西.它有民意调查、投票、文章、新闻通讯、管理.也是 ASP.Net 会员服务的好教程.到目前为止遇到了很棒的东西.
http://thebeerhouse.codeplex.com/[^]

谢谢,

Kuthuparakkal

哦,伙计不要那样做

间隔计时器应该是用户的,但它们不应该用于等到一定的时间过去.

而是创建时间表.

在您的情况下,假设您希望在初始化后 1 天发生某些事情.
取当前日期 DateTime.Now.AddDays(1);

然后你使用你的计时器每隔 1 分钟检查一次,所以每隔 60000 毫秒间隔一次
if(DateTime.Now >= DateTimeSchedule){DateTimeSchedule = DateTime.Now.AddDays(1);//按计划去做}


这将确保 PC 关闭,您的计时器不会再次从顶部开始

PS 作为警告,请为此使用 Windows 服务,原因是 ASP.NET 进程每隔几分钟就会被回收,这意味着即使您的计时器正在运行,asp.net 也会决定回收该进程.这意味着您的计时器将完全关闭.


在有办法通过使用 HTTP Web 客户端在网站被回收但它变得非常混乱时重新激活网站来解决这个问题之前,我完全被烧毁了.

本文地址:https://www.itbaoku.cn/post/1356073.html