服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

ASP.NET(C#) 定时执行一段代码

2019-06-22 16:52服务器之家 ASP.NET教程

在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> 

延伸 · 阅读

精彩推荐