using System;using System.Collections;using System.ComponentModel;using System.Web;using System.Web.SessionState;using DataBase;using System.Data.SqlClient;using System.Web.Security;using System.IO ;using System.Threading;namespace FreightCom ...{ /**//**//**//// <summary> /// Global 的摘要说明。 /// </summary> public class Global : System.Web.HttpApplication ...{ /**//**//**//// <summary> /// 必需的设计器变量。 /// </summary> private System.ComponentModel.IContainer components = null; private OnLineUser ou=new OnLineUser(); private UserLoginInfo Login=new UserLoginInfo(); public Global() ...{ InitializeComponent(); } protected void Application_Start(Object sender, EventArgs e) ...{ SchedulerAgent.StartAgent(); } protected void Session_Start(Object sender, EventArgs e) ...{ } protected void Application_BeginRequest(Object sender, EventArgs e) ...{ } protected void Application_EndRequest(Object sender, EventArgs e) ...{ } protected void Application_AuthenticateRequest(Object sender, EventArgs e) ...{ } protected void Application_Error(Object sender, EventArgs e) ...{ } protected void Session_End(Object sender, EventArgs e) ...{ } protected void Application_End(Object sender, EventArgs e) ...{ SchedulerAgent.Stop(); } Web 窗体设计器生成的代码Web 窗体设计器生成的代码#region Web 窗体设计器生成的代码 /**//**//**//// <summary> /// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 /// </summary> private void InitializeComponent() ...{ this.components = new System.ComponentModel.Container(); } #endregion } public interface ISchedulerJob ...{ void Execute(); } public class SchedulerConfiguration ...{ private int sleepInterval; private ArrayList jobs=new ArrayList(); public int SleepInterval ...{ get...{return sleepInterval;} } public ArrayList Jobs ...{ get ...{return jobs;} } public SchedulerConfiguration(int newSleepInterval) ...{ sleepInterval=newSleepInterval; } } public class Scheduler ...{ private SchedulerConfiguration configuration = null; public Scheduler(SchedulerConfiguration config) ...{ configuration=config; } public void Start() ...{ while(true) ...{ try ...{ foreach(ISchedulerJob job in configuration .Jobs) ...{ job.Execute(); } } catch...{} finally ...{ Thread.Sleep(configuration.SleepInterval); } } } } public class SchedulerAgent ...{ private static System.Threading.Thread schedulerThread=null; public static void StartAgent() ...{ SchedulerConfiguration config=new SchedulerConfiguration(1000*300);//设置时间,此处为5分钟 config.Jobs.Add(new AlertJob()); Scheduler scheduler=new Scheduler(config); System.Threading.ThreadStart myThreadStart=new System.Threading.ThreadStart(scheduler.Start); schedulerThread=new System.Threading.Thread(myThreadStart); schedulerThread.Start(); } public static void Stop() ...{ if(null!=schedulerThread) ...{ schedulerThread.Abort(); } } } public class AlertJob:ISchedulerJob ...{ private OnLineUser ou=new OnLineUser(); public void Execute() ...{ ou.UserDelOnline();//一个删除的方法 } }}