当前位置: 移动技术网 > IT编程>开发语言>.net > asp.net 定时间点执行任务的简易解决办法

asp.net 定时间点执行任务的简易解决办法

2017年12月12日  | 移动技术网IT编程  | 我要评论
比如每天凌晨七点的时候email发送一次报表。 这里首先想到的就是利用 global.asax 文件来实现, 以下global文件的内容。 复制代码 代码如下: <%
比如每天凌晨七点的时候email发送一次报表。
这里首先想到的就是利用 global.asax 文件来实现, 以下global文件的内容。
复制代码 代码如下:

<%@ application language="c#" %>
<%@ import namespace="system.threading" %>

<script runat="server">

//这里使用静态保持对这处timer实例的引用,以免gc
private static system.threading.timer timer = null;

protected void application_start(object sender, eventargs e) {
//计算现在到目标时间要过的时间段。
datetime lucktime = datetime.now.date.add(new timespan(7, 0, 0));
timespan span = lucktime - datetime.now;
if (span < timespan.zero) {
span = lucktime.adddays(1d) - datetime.now;
}
//按需传递的状态或者对象。
object state = new object();
//定义计时器
timer = new system.threading.timer(
new timercallback(certaintask), state,
span, timespan.fromticks(timespan.ticksperday));
}

protected void application_end(object sender, eventargs e) {
//结束时记得释放
if (timer != null) { timer.dispose(); }
}

//这里是指定时间执行的代码,必须是静态的。
private static void certaintask(object state) {
//这里写你的任务逻辑
}

</script>

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网