zoukankan      html  css  js  c++  java
  • asp.net 间隔一段时间执行某方法

    设想网站后台每秒自动更新一下Cache["test"]中的值,通过这个实现就可以完成一些在间隔多少时间更新一下数据库的操作。

    1、定义一个事件类BMAEvent,在Processor方法中添加间隔1秒更新一次Cache

     public class BMAEvent
        {
            private static Timer _timer;//定时器
    
            static BMAEvent()
            {
                    _timer = new Timer(new TimerCallback(Processor), null, 1000, 1000);
            }
    
            /// <summary>
            /// 此方法为空,只是起到激活BrnMall事件处理机制的作用
            /// </summary>
            public static void Start() { }
    
            /// <summary>
            /// 事件处理程序
            /// </summary>
            /// <param name="state">参数对象</param>
            public static void Processor(object state)
            {
                HttpRuntime.Cache.Insert("test", DateTime.Now.ToString());
            }
        }

    2、在Global.asax下Application_Start()中启动事件

    BMAEvent.Start();

    3、显示部分,在控制器中添加

     public ActionResult BtnClick()
            {
                string str = "初始化...";
                if (HttpRuntime.Cache["test"] != null)
                   str= HttpRuntime.Cache["test"].ToString();
                return Content(str);
            }

    4、在页面中添加显示代码,使用了ajax

    <div id="result"></div>
    
    @Ajax.ActionLink("获取值", "BtnClick", new AjaxOptions() { InsertionMode = InsertionMode.Replace, UpdateTargetId = "result" })
  • 相关阅读:
    【NOIp】NOIp2015
    【题解】Luogu P2899 [USACO008JAN] 手机网络 树形dp
    「EZEC-4.5」走方格
    ZJOI2013 K大数查询
    CF765F Souvenirs
    [Vani有约会] 雨天的尾巴 /【模板】线段树合并
    中国剩余定理(CRT / EXCRT)
    洛谷 P1516 青蛙的约会
    CQOI2009 叶子的染色
    CSP2019 Emiya 家今天的饭
  • 原文地址:https://www.cnblogs.com/lunawzh/p/5228260.html
Copyright © 2011-2022 走看看