网站链接: 我爱捣鼓
当前位置: 首页 > web开发  > MVC

asp.net/MVC怎么实现每隔多长时间定时自动执行某操作

2021/3/4 22:01:20

大家都知道js实现每几秒刷新一次页面非常简单,但如果使用mvc/c#如何实现每隔几秒,执行一个操作呢?下面贴出源码供大家参考:using System;using System.IO;using System.Runtime.CompilerServices;using System.Text; namespace SystemTask{ public class Censusdem…

大家都知道js实现每几秒刷新一次页面非常简单,但如果使用mvc/c#如何实现每隔几秒,执行一个操作呢?下面贴出源码供大家参考:


using System;
using System.IO;
using System.Runtime.CompilerServices;
using System.Text;
 
namespace SystemTask
{
    public class CensusdemoTask
    {
        System.Threading.Timer timer;
        private static int count = 1;
 
        public CensusdemoTask()
        {
            //3秒执行一次
            timer = new System.Threading.Timer(SetCensusURL, null, 0, 1000 * 3);
        }
 
        [MethodImpl(MethodImplOptions.Synchronized)]
        public void SetCensusURL(object obj)
        {
            var date = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
            string txt = string.Empty;
            if (count==1)
            {
                txt += string.Format("========系统重启========\r\n");
            }
            txt += string.Format("写入时间:{0},次数{1}", date, count);
            FileStream fs = null;
            StreamWriter sw = null;
            try
            {
                string path = "D:\\1.txt";//文件的路径,保证文件存在。
                fs = new FileStream(path, FileMode.Append);
                sw = new StreamWriter(fs);
                sw.WriteLine(txt);
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                sw.Dispose();
                sw.Close();
                fs.Dispose();
                fs.Close();
            }
            count++;
        }
    }
}


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Caching;
using System.Web.Mvc;
using System.Web.Routing;
 
namespace Mvc
{
    public class MvcApplication : System.Web.HttpApplication
    {
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            RouteConfig.RegisterRoutes(RouteTable.Routes);
 
            //在Global.asax的Application_Start中注册任务
            SystemTask.CensusdemoTask t = new SystemTask.CensusdemoTask();
        }
    }
}


相关资讯

  • C#如何实现图片马赛克效果处理?

    我们经常会看到图片上面打上马赛克,一般人都会想到ps,如果通过C#程序如何实现了,可以看看下面的源码:using System.Drawing;using System.Drawing.Imaging;using System.Web.Mvc; namespace MVC2017_Sample.Controllers{ public class DefaultController : Control…

    2021/3/4 21:55:08
  • mvc中如何将控制器的数据赋值给视图的js对象json?

    mvc中如何将控制器的数据赋值给视图的js对象,其实非常简单,话不多说,直接看源码吧!cshtml页面@{ Layout = null;} <!DOCTYPE html><html><head> <meta name="viewport" content="width=device-width" /> <ti…

    2021/3/4 21:51:09