真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

C#中定時(shí)器Timer的使用示例

這篇文章給大家分享的是有關(guān)C#中定時(shí)器Timer的使用示例的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。

成都創(chuàng)新互聯(lián)公司專(zhuān)注于企業(yè)營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、網(wǎng)站重做改版、東平網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5建站、電子商務(wù)商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為東平等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。

static void Main(string[] args)
        {
            #region  定時(shí)器
            TimerDemo td = new TimerDemo("TimerDemo", 1000);
            td.Enabled = true;
            td.TickEvent += TestHandler;
            Thread timer = new Thread(td.Run);
            timer.Start();
            #endregion
            Console.ReadLine();
        }

        /// 
        /// 測(cè)試用事件
        /// 
        static void TestHandler()
        {
            Console.WriteLine(DateTime.Now.ToLongTimeString());
        }
public class TimerDemo
    
    {
        //線程名
        string _ThreadName;
        public string ThreadName
        {
            get { return _ThreadName; }
            private set { _ThreadName = value; }
        }
        //時(shí)間間隔
        int _TimeInterval;
        public int TimeInterval
        {
            get { return _TimeInterval; }
            set { _TimeInterval = value; }
        }
        //當(dāng)前計(jì)時(shí)器是否啟用 true:?jiǎn)⒂?nbsp;false:不啟用
        bool _Enabled;
        public bool Enabled
        {
            get { return _Enabled; }
            set { _Enabled = value; }
        }
        //每隔一段時(shí)間需要運(yùn)行的事件
        public delegate void TickEventHandler();
        public event TickEventHandler TickEvent;
        /// 
        /// 建立一個(gè)計(jì)時(shí)器(構(gòu)造函數(shù))
        /// 
        /// 線程名
        /// 時(shí)間間隔
        public TimerDemo(string ThreadName, int TimeInterval = int.MaxValue)
        {
            this.ThreadName = ThreadName;
            this.TimeInterval = TimeInterval;
            this.Enabled = false;
        }
        /// 
        /// 定期執(zhí)行事件
        /// 
        public void Run()
        {
            while (true)
            {
                //如果當(dāng)前計(jì)時(shí)器并未啟用,則每隔一段時(shí)間檢測(cè)是否被啟用
                if (!this.Enabled)
                {
                    Thread.Sleep(100);
                    continue;
                }
                //觸發(fā)事件TickEvent
                if (TickEvent != null)
                {
                    TickEvent();
                }
                //休眠一定的時(shí)間,等待下一個(gè)循環(huán)
                Thread.Sleep(TimeInterval % 100);
                for (int temp = 0; temp < TimeInterval / 100; temp++)
                {
                    Thread.Sleep(100);
                    if (!this.Enabled)
                    {
                        break;
                    }
                }
            }
        }
    }

感謝各位的閱讀!關(guān)于“C#中定時(shí)器Timer的使用示例”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!


標(biāo)題名稱:C#中定時(shí)器Timer的使用示例
網(wǎng)頁(yè)網(wǎng)址:http://weahome.cn/article/jcoech.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部