网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

C#中定时器Timer的使用示例

这篇文章给大家分享的是有关C#中定时器Timer的使用示例的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

成都创新互联公司专注于企业营销型网站建设、网站重做改版、东平网站定制设计、自适应品牌网站建设、H5建站电子商务商城网站建设、集团公司官网建设、外贸营销网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为东平等各大城市提供网站开发制作服务。

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

        /// 
        /// 测试用事件
        /// 
        static void TestHandler()
        {
            Console.WriteLine(DateTime.Now.ToLongTimeString());
        }
public class TimerDemo
    
    {
        //线程名
        string _ThreadName;
        public string ThreadName
        {
            get { return _ThreadName; }
            private set { _ThreadName = value; }
        }
        //时间间隔
        int _TimeInterval;
        public int TimeInterval
        {
            get { return _TimeInterval; }
            set { _TimeInterval = value; }
        }
        //当前计时器是否启用 true:启用 false:不启用
        bool _Enabled;
        public bool Enabled
        {
            get { return _Enabled; }
            set { _Enabled = value; }
        }
        //每隔一段时间需要运行的事件
        public delegate void TickEventHandler();
        public event TickEventHandler TickEvent;
        /// 
        /// 建立一个计时器(构造函数)
        /// 
        /// 线程名
        /// 时间间隔
        public TimerDemo(string ThreadName, int TimeInterval = int.MaxValue)
        {
            this.ThreadName = ThreadName;
            this.TimeInterval = TimeInterval;
            this.Enabled = false;
        }
        /// 
        /// 定期执行事件
        /// 
        public void Run()
        {
            while (true)
            {
                //如果当前计时器并未启用,则每隔一段时间检测是否被启用
                if (!this.Enabled)
                {
                    Thread.Sleep(100);
                    continue;
                }
                //触发事件TickEvent
                if (TickEvent != null)
                {
                    TickEvent();
                }
                //休眠一定的时间,等待下一个循环
                Thread.Sleep(TimeInterval % 100);
                for (int temp = 0; temp < TimeInterval / 100; temp++)
                {
                    Thread.Sleep(100);
                    if (!this.Enabled)
                    {
                        break;
                    }
                }
            }
        }
    }

感谢各位的阅读!关于“C#中定时器Timer的使用示例”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


网站栏目:C#中定时器Timer的使用示例
网站地址:http://bjjierui.cn/article/jcoech.html

其他资讯