.NET中各类定时器的使用
来源:互联网 发布:儿童电子琴选购 知乎 编辑:程序博客网 时间:2024/06/07 01:00
服务器计时器、Windows 计时器和线程计时器
在 Visual Studio 和 .NET Framework 中有三种计时器控件:基于服务器的计时器(可以在“工具箱”的“组件”选项卡上看到)、基于 Windows 的标准计时器(可以在“工具箱”的“Windows 窗体”选项卡上看到)和线程计时器(只能以编程方式使用)。基于 Windows 的计时器从 Visual Basic 1.0 版起就存在于该产品中,并且基本上未做改动。该计时器针对在 Windows 窗体应用程序中使用而进行了优化。基于服务器的计时器是传统的计时器为了在服务器环境上运行而优化后的更新版本。线程计时器是一种简单的、轻量级计时器,它使用回调方法而不是使用事件,并由线程池线程提供支持。
在 Win32 体系结构中有两种类型的线程:UI 线程和辅助线程。UI 线程绝大多数时间处于空闲状态,等待消息循环中的消息到来。一旦接收到消息,它们就进行处理并等待下一个消息到来。另外,辅助线程用来执行后台处理而且不使用消息循环。Windows 计时器和基于服务器的计时器在运行时都使用 Interval
属性。线程计时器的时间间隔在
-
Windows 计时器是为单线程环境设计的,其中,UI 线程用于执行处理。Windows 计时器的精度限定为 55 毫秒。这些传统计时器要求用户代码有一个可用的 UI 消息泵,而且总是在同一个线程中操作,或者将调用封送到另一个线程。对于 COM 组件来说,这样会降低性能。
-
基于服务器的计时器是为在多线程环境下与辅助线程一起使用而设计的。由于它们使用不同的体系结构,因此基于服务器的计时器可能比 Windows 计时器精确得多。服务器计时器可以在线程之间移动来处理引发的事件。
-
对消息不在线程上发送的方案中,线程计时器是非常有用的。例如,基于 Windows 的计时器依赖于操作系统计时器的支持,如果不在线程上发送消息,与计时器相关的事件将不会发生。在这种情况下,线程计时器就非常有用。
Windows 计时器位于
- .NET中各类定时器的使用
- .net 定时器的使用
- ASP.NET项目中使用定时器的方案
- 总结——有关Visual C#.NET 中设计的各类@符号的使用
- vc中定时器的使用
- vc中定时器的使用
- js中定时器的使用
- VC中定时器的使用
- VC中定时器的使用
- VC中定时器的使用
- vc中定时器的使用
- vc中定时器的使用
- vc中定时器的使用
- MFC中定时器的使用
- js中定时器的使用
- 多线程中定时器的使用
- 多线程中定时器的使用
- VC++中定时器的使用
- JS Cookies
- 原来问题如此简单
- java初级知识
- 排列组合算法1:生成全部有序列
- 插入代码
- .NET中各类定时器的使用
- 数据类型和引用类型
- 通过操作地址的方法来访问C++类对象中私有成员变量
- C++模板编程及函数对象
- JSP标签库介绍
- java关键字详解(abstract.double.int.switch)
- 开发第一个JSP自定义标签
- 使用SQL*LOADER装载数据
- .NET中的串口使用