.net的四个Timer类

.NET 包含四个名为 Timer的类。
分别是:
System.Timers.Timer :用作多线程环境中基于服务器的或服务组件; 它没有用户界面,在运行时不可见
System.Threading.Timer :用作多线程环境中基于服务器的或服务组件; 它没有用户界面,在运行时不可见
System.Windows.Forms.Timer(仅 .NET Framework) :最宜用于Windows 窗体应用程序中,并且必须在窗口中使用
System.Web.UI.Timer(仅 .NET Framework):在固定时间间隔内执行异步或同步网页回发的 ASP.NET 组件。

那么如何试用他们呢?

	class Program
	{
	    static void Main(string[] args)
	    {
	        //第一种:System.Timers.Timer
	        System.Timers.Timer systemTimer = new System.Timers.Timer(2000);
	        systemTimer.Elapsed += FunctionTypeOne;
	        systemTimer.AutoReset = true;//是否重复执行
	        systemTimer.Start();//等同于将 Enabled 设置为 true  ----> 引发 Elapsed 事件。
	        //systemTimer.Stop(); //等同于将 Enabled 设置为 false ----> 停止引发 Elapsed 事件。
	        //systemTimer.Dispose(); //释放 Component 使用的所有资源。
	
	        //第二种:System.Threading.Timer
	        System.Threading.Timer threadTimer = new System.Threading.Timer(FunctionTypeTwo);
	        threadTimer.Change(0, 5000);
	        //为什么没有stop()?
	        //因为它与任何托管对象一样,当不存在任何引用时,Timer 可能会进行垃圾回收,
	        //即使 Timer 仍处于活动状态,也不会阻止收集它。
	        //threadTimer.Dispose();
	        Console.ReadLine();
	    }
	
	    private static void FunctionTypeOne(object sender, ElapsedEventArgs e)
	    {
	        Console.WriteLine("这是systemTimer," + e.SignalTime);
	    }
	
	    private static void FunctionTypeTwo(object state)
	    {
	        Console.WriteLine("formTimer," + DateTime.Now.ToString());
	    }
	}

在这里插入图片描述
下面是System.Windows.Forms.Timer

 	public partial class Form1 : Form
    {
        //最宜用于Windows 窗体应用程序中,并且必须在窗口中使用
        private static System.Windows.Forms.Timer formTimer = new System.Windows.Forms.Timer();
        public Form1()
        {
            formTimer.Tick += new EventHandler(FunctionTypeThree);
            formTimer.Interval = 3000;
            formTimer.Start();
        }
        private static void FunctionTypeThree(object sender, EventArgs e)
        {
            MessageBox.Show("formTimer," + DateTime.Now.ToString());
        }
    }

在这里插入图片描述
最后一个是UI.Timer,在 .aspx页中试用

<body>
    <form id="form1" runat="server">
        <asp:ScriptManager ID="ScriptManager1" runat="server" />
        <%--在固定时间间隔内执行异步或同步网页回发的 ASP.NET 组件。--%>
        <asp:Timer ID="Timer1" OnTick="Timer1_Tick" runat="server" Interval="3000" />
         时间:<asp:Label id="TimeOfPrice" runat="server"></asp:Label>
    </form>
     <script runat="server">
        protected void Timer1_Tick(object sender, EventArgs e)
        {
            TimeOfPrice.Text = DateTime.Now.ToLongTimeString();
        }
    </script>
</body>

好了,你们学废了么?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第一部分 Visual Basic.net基础 1.vb. net介绍 2.vb.net的优点 3.新建一个vb.net项目 4.编写第一个vb.net应用程序 第二部分 vb.net的语法部分 1.vb.net的Numeric数据型 2.vb.net的Byte数据型 3.vb.net的String数据型 4.vb.net的Boolean数据型 5.vb.net的Date数据型 6.vb.net的Object数据型 7.vb.net的用户自定义型 8.vb.net的数组定义 9.vb.net的数组列表 10.vb.net的多维数组 11.vb.net型转换函数 第三部分 visual basic.net的运算 程序设计时经常用到的有6种运算:算术运算(Arithmetic)、赋值运算(Assignment)、二进制运算(Bitwise)、比较运算(Comparison)、连接运算(concatenation)及逻辑运算(Logical),下面对这6种运算进行简单介绍。 1.vb.net的算术运算 2.vb.net的赋值运算符 3.vb.net的二进制运算符 4.vb.net的比较运算符 5.vb.net的连接运算符和逻辑运算符 6.vb.net运算符的优先级 (一) Visual basic.net的常量和变量 1.vb.net的常量 2.vb.net的变量 (二) Visual basic.net的流程和控制结构 1.vb.net条件分支语句 2.vb.net的循环语句 (三) vb.net的过程和函数 1.vb.net的Sub过程 2.vb.net的Funtion过程 3.在vb.net中调用过程 4.如何向过程传递参数 (四)vb.net和对象基础 第四部分 visual basic.net的常用控件 1.vb.net的Label控件 2.vb.net的Button控件 3.vb.net的Textbox控件 4.vb.net的MainMenu控件 5.vb.net的Checkbox控件 6.vb.net的Radiobutton控件 7.vb.net的GroupBox控件 8.vb.net的PictureBox控件 9.vb.net的ListBox控件 10.vb.net的CheckedListBox控件 11.vb.net的Combobox控件 12.vb.net的ListView控件 13.vb.net的TreeView控件 14.vb.net的ImageList控件 15.vb.netTimer控件 16.vb.net的HScrollBar和VScrollBar控件 17.vb.net的ProgressBar控件 18.vb.net的ToolBar控件 19.vb.net的StatusBar控件 20.Vs 2005的ToolStrip控件 21.Vs 2005的StatusStrip控件 22.Vs 2005的MenuStrip控件 第六部分 vb.net的OOP结构 1.什么是oop 2.vb.net的面向对象性 3.vb.net的共享成员(Share Members) 4.模块和标准代码模块的区别和比较 5.对象浏览器 (一) 建立和使用对象 1.vb.net对象的建立和销毁:对象的生命周期 2.设置和重设vb.net的属性 3.用方法来表现动作 4.vb.net对象变量的声明 5.对一个对象进行多种操作 6.使用New关键字 7.如何释放对对象的引用 8.如何把对象传递到一个过程 (二) 在程序运行中得到一个的信息: 用一个字符名称调用一个属性或者方法 (三) vb.net中的、继承与多态性 1.vb.net中给一个添加方法 2.命名属性、方法和事件 3.vb.net的事件和事件处理 4.的继承(Inheritance) 5.vb.net继承的规则 6.用继承建立一个继承 7.重载Windows控件 8.什么时候使用继承 9.什么是命名空间(Namespace) 10.vb.net继承的例子 11.vb.net中用继承实现多态性 12.vb.net中用接口实现多态性 第七部分 数据库访问技术 关于SQL语言的知识,请参考: sql语言教程及Sql语言基础 1.数据库基础知识 2.vb.net数据集(Datasets)的概念 3.什么是dao 4.Dao与Jet数据库引擎 5.Dao对象模型 6.远程数据对象RDO 7.Rdo对象模型 8.odbc api是什么 9.ODBC的结构 10.使用ODBC API访问数据库 11.ado数据对象 12.ado对象模型 13.ADO.NET简介 14.使用ADO.NET的基本方法 第八部分 vb.net的多线程 1.自由线程(Free Threading) 2.关于线程的参数和返回值的问题 3.vb.net的并发性问题 第九部分 vb.net的文件和出错处理 1.vb.net的出错处理 2.vb.net的多种出错处理(Multiple Exceptions) 3.vb.net的文件对象(file object) 4.vb.net文件处理的出错处理 5.检测文件的结束(Testing for End of File) 6.文件的静态方法(Static File Methods)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值