zoukankan      html  css  js  c++  java
  • 在B/S系统中引入定时器的功能

    现在在ASP。NET中可以使用自定义实现IHttpModule接口的类来加载一个定时器。
    public class OilIHttpModule : IHttpModule {  public static Timer analyseTimer;//分析数据的定时器 static int intLastTrialInfo_id;//最后分析的ID  static long intAnalyseInterval= 10000;//间隔的时间  public OilIHttpModule()  { }  public String ModuleName  {   get { return "OilModule"; }  }  ///初始化模型  public void Init(HttpApplication application)  {   application.BeginRequest += (new EventHandler(this.Application_BeginRequest));//增加处理请求时触发的事件  if(intLastTrialInfo_id==0)   { //获取最后分析的   trialInfo_id intLastTrialInfo_id = globalMethod.getLastAnalyseTrialInfo_id();   }   //判断Timer是否存在,如果没有则实例化   if(analyseTimer==null)    analyseTimer = new Timer(new TimerCallback(analyseData),null,intAnalyseInterval,intAnalyseInterval);  } 
     private void Application_BeginRequest(Object source, EventArgs e)  {   //null   // HttpApplication application = (HttpApplication)source;   // application.Response.Write(intLastTrialInfo_id.ToString());  }  ///要定时执行的程序片段  private void analyseData(object obj)  {   ///很重要,可以防止定时器被重新生成   analyseTimer.Change( System.Threading.Timeout.Infinite, intAnalyseInterval );  // StatsInterval   int intTrialInfo_idAfterUpdate;   intTrialInfo_idAfterUpdate = globalMethod.AnalyseTrialFromTrialInfo_id(intLastTrialInfo_id);   if(intTrialInfo_idAfterUpdate > intLastTrialInfo_id)   {    intLastTrialInfo_id = intTrialInfo_idAfterUpdate;   }  } public void Dispose()  {  analyseTimer = null; 
    }


  • 相关阅读:
    Linux常用指令整理
    结构型模式-组合模式(树形结构的处理)
    结构型模式-适配器模式(不兼容结构的协调)
    创建型模式-原型模式(对象的克隆)
    创建型模式-单例模式(确保对象唯一性)
    创建型模式-抽象工厂
    Linux之linux下安装mysql
    关于elipse中maven搭建好后,一直building workspace的问题
    idea配置数据库下载驱动
    idea配置maven以及手动添加webapp目录
  • 原文地址:https://www.cnblogs.com/ghd258/p/264072.html
Copyright © 2011-2022 走看看