您的当前位置:首页正文

Jtro的源码分享:服务器端使用定时器

来源:要发发知识网

游戏服务器和其他服务器不同,往往需要执行一些“每隔N秒执行一次”的事项,后面的文章会提到的“心跳检测”,便需要定时器。
下面的是一个简单的额定时器的源码,功能是每隔1秒打印一行文本。

using System;
using System.Timers;
class MainClass 
{
        public static void Main (string [] args)
        {
           Timer timer = new Timer();
            timer.AutoReset = true;
            timer.Interval = true;
            timer.Elapsed += new ElapsedEventHandler (Tick);
            timer.Start ();
            Console.Read ();
        }
        public static void Tick (object sender,System.Timers.ElapsedEventArgs e)
        {
            Console.WriteLine (" 每一秒执行一次");
         }
}
属性和方法 说明
Start () 通过将Enable设置为true开始引发事件
Stop () 通过将Enable设置为false停止引发事件
Close () 释放由Timer占用的资源
AutoReset () 指示Timer是应在每次指定的事件间隔结束时重启
Enabled 该值指示Timer是否应引发事件
Interval 获取或设置引发事件的间隔时间,单位为毫秒

Timers的一些属性和方法

属性和方法 说明
Start () 通过将Enable设置为true开始引发事件
Stop () 通过将Enable设置为false停止引发事件
Close () 释放由Timer占用的资源
AutoReset () 指示Timer是应在每次指定的事件间隔结束时重启
Enabled 该值指示Timer是否应引发事件
Interval 获取或设置引发事件的间隔时间,单位为毫秒