我要写一个服务每十分钟扫描一下sql的数据库然后进行一些 *** 作怎么弄

我要写一个服务每十分钟扫描一下sql的数据库然后进行一些 *** 作怎么弄,第1张

使用线程去 *** 作,

在Global中的Application_Start开启后台线程。线程是设置每十分钟运行一次程序。

  public class Global : System.Web.HttpApplication

    {

        void Application_Start(object sender, EventArgs e)

        {

            // 在应用程序启动时运行的代码

            //开启辅线程

            BLL.MainThread.Activate()

        }

}

   public static class MainThread

    {

        static System.Timers.Timer t

        static MainThread()

        {

            t = new System.Timers.Timer()

            t.Interval = 1000

            t.AutoReset = true

            t.Elapsed += t_Elapsed

        }

        static long sn = 1

        static void t_Elapsed(object sender, System.Timers.ElapsedEventArgs e)

        {

//这里就是写 *** 作sql数据库的代码了 

            

            sn++

        }

        public static void Activate()

        {

            if (!t.Enabled)

            {

                t.Start()

            }

     }

        public static void Stop()

        {

            //这里放结束线程 *** 作

            if (t.Enabled)

            {

                t.Stop()

            }

        }

    }

全表扫描的意思就是要把表中所有数据过一遍才能显示数据结果,索引扫描就是索引,只需要扫描一部分数据就可以得到结果,

打个比方吧,在新华字典中,如果没有拼音或笔画索引,当我们查找“做”这个字就要从字典第一页一次往后查,一直插到Z开头的部分才能找到,即使找到也不确定后面是不是还有(假定字典是无序状态的),因此还得往后找,知道正本字典翻完,才确定“哦,原来刚才找到的那个记录就是想要的结果了”。索引扫描的意思就是我们预先知道“做”这个字在拼音的Z区域,然后根据前面目录查看"zuo"这个拼音在那一页,然后直接翻到那一页就能找到我们要的结果了,这样就能大大减少查询的时间。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6695177.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存