Threading.Tasks 簡單的使用


using Lemon.Common;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Timers;
using System.Web;

namespace Lemon.Stats.Web.Service
{
    public class SynchCacheDataService
    {
        /// <summary>
        /// 定時器
        /// </summary>
        private static System.Timers.Timer TimerOne;

        public static void StartService()
        {
            TimerOne = new System.Timers.Timer();
            TimerOne.Interval = 1000;   //1分鍾執行一次(毫秒單位)
            TimerOne.Elapsed += new ElapsedEventHandler(TimeUpdateDataTimer_Elapsed);
            TimerOne.Enabled = true;
        }

        /// <summary>
        /// 定時器執行事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private static void TimeUpdateDataTimer_Elapsed(object sender, ElapsedEventArgs e)
        {
            SynchCacheData();
        }

        /// <summary>
        /// 同步緩存數據事件
        /// </summary>
        /// <returns></returns>
        public static Task<int> SynchCacheData()
        {
            return Task.Run(() =>
            {
                return SyncHelper.SyncCacheData();
            }); 
        }
    }
}

調用方式:

using Lemon.Stats.Web.Service;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Http;
using System.Web.Security;
using System.Web.SessionState;

namespace Lemon.Stats.Web
{
    public class Global : System.Web.HttpApplication
    {
        protected void Application_Start(object sender, EventArgs e)
        {
            GlobalConfiguration.Configure(WebApiConfig.Register);
            GlobalConfiguration.Configure(FormatConfig.Register);

            //啟動同步緩存數據
            SynchCacheDataService.StartService();
        }

        protected void Session_Start(object sender, EventArgs e)
        {

        }

        protected void Application_BeginRequest(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)
        {

        }
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM