ASP.NET 定时执行一段代码

news/2024/6/29 15:56:22 标签: asp.net, application, object, thread, sqlserver, session
在Global.asax启动一条线程就ok了,下面是启动线程定时写文件的例子

Global.asax
C# code
   
<% @ Application Language = " C# " %>
<% @ Import Namespace = " System.IO " %>
<% @ Import Namespace = " System.Threading " %>
< script runat = " server " >
string LogPath;
Thread thread;
void WriteLog()
{
while ( true )
{
StreamWriter sw
= new StreamWriter(LogPath, true , Encoding.UTF8);
sw.WriteLine(thread.Name
+ " : " + DateTime.Now.ToString());
sw.Close();
Thread.CurrentThread.Join(
1000 * 60 ); // 阻止1分钟
}
}
void Application_Start( object sender, EventArgs e)
{
LogPath
= HttpContext.Current.Server.MapPath( " log.txt " );
// 在应用程序启动时运行的代码
thread = new Thread( new ThreadStart(WriteLog));
thread.Name
= " 写登录日志线程 " ;
thread.Start();
}

void Application_End( object sender, EventArgs e)
{
// 在应用程序关闭时运行的代码

}

void Application_Error( object sender, EventArgs e)
{
// 在出现未处理的错误时运行的代码

}

void Session_Start( object sender, EventArgs e)
{
// 在新会话启动时运行的代码

}

void Session_End( object sender, EventArgs e)
{
// 在会话结束时运行的代码。
// 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
// InProc 时,才会引发 Session_End 事件。如果会话模式
// 设置为 StateServer 或 SQLServer,则不会引发该事件。

}

</ script >


http://www.niftyadmin.cn/n/1412953.html

相关文章

如何动态代理Controller的接口并注册到SpringMVC中

1、实现对Controller接口的动态代理 Target(ElementType.TYPE) Retention(RetentionPolicy.RUNTIME) public interface MyController {String value() default ""; } Target(ElementType.METHOD) Retention(RetentionPolicy.RUNTIME) public interface MyController…

Javascript基础

Javascript基础 简介 JavaScript&#xff0c;一种直译式脚本语言&#xff0c;是一种动态类型、基于原型的语言&#xff0c;内置支持类别。它的解释器被称为JavaScript引擎&#xff0c;为浏览器的一部分&#xff0c;广泛用于客户端的脚本语言&#xff0c;最早是在HTML网页上使用…

JAVA 线程(一)

一、线程的含义 线程&#xff1a;一条线程指的是进程中一个单一顺序的控制流&#xff0c;一个进程中可以并发多个线程 进程&#xff1a;一个进程包括由操作系统分配的内存空间&#xff0c;包含一个或多个线程。一个线程不能独立的存在。 多线程能满足程序员编写高效率的程序来达…

代码示例_IPC_共享内存

共享内存 1.封装接口 #include"shm.h"//获取唯一键值 key_t get_key(void){return ftok("/",0x111);}//创建共享内存 int creat_shm(key_t key, size_t size){return shmget(key, size, 0666|IPC_CREAT);}//获取共享内存 int get_shm(key_t key, size_t s…

APP开放源码第一弹《纳豆》

2016年7月2日&#xff0c;这是一个风轻云淡的日子&#xff0c;DeviceOne平台的用户Star将自己经过一段时间研发的产品通过官方的渠道开源出来&#xff0c;这不仅是对自己设计的高度自信、更是想体现一下自己对于DeviceOne这个平台的理解&#xff0c;再次感谢Star用户对DeviceOn…

Ie和firefox的Js区别

1. 对象问题 1.1 Form对象 现有问题&#xff1a;现有代码这获得form对象通过document.forms("formName")&#xff0c;这样使用在IE 能接受&#xff0c;MF 不能。解决方法&#xff1a;改用 作为下标运算。改为document.forms["formName"]备注上述的改用 作为…

log4j、logback、slf4j的区别和联系

1. 常见的Java日志框架 实现框架&#xff1a;log4j &#xff1a;出现于JDK 1.3之前&#xff0c;它定义了Logger、Appender、Level等概念log4j2 &#xff1a;log4j的重写版j.u.l (java.util.logging) &#xff1a; Java原生库&#xff0c;始于Java 1.4&#xff0c;Java1.5以…

关系型到文档型的跨越:颠覆你对数据库数据模型的认识

1.简介在文档型NoSQL数据库出现之前&#xff0c;许多开发者一直绞尽脑汁思考&#xff0c;希望能想出更好的处理关系型数据库技术的方法&#xff0c;如今他们可能要跳出那种思维而另辟蹊径。本篇白皮书将介绍关系型数据库和分布式文档型数据库的区别以及在应用开发上的一些建议。…