计时器技术示例

更新:2007 年 11 月

本示例演示了公共语言运行库中计时器的使用。本示例使用 Timer 类生成对方法的定期回调。本示例创建 Timer 并将其传递给委托。在 Timer 激发后,该委托被调用,并且线程池中的辅助线程异步调用静态方法。

有关使用这些示例的更多信息,请参见下面的主题:

Download sample

使用命令提示生成示例

  1. 打开命令提示窗口,然后定位到该示例的语言特定子目录之一。

  2. 根据所选的编程语言,在命令行中键入 msbuild TimersCS.sln 或 msbuild TimersVB.sln。

使用 Visual Studio 生成示例

  1. 打开 Windows 资源管理器,然后定位到该示例的语言特定子目录之一。

  2. 根据所选的编程语言,双击 TimersCS.slnTimersVB.sln 的图标,在 Visual Studio 中打开该文件。

  3. 在“生成”菜单上单击“生成解决方案”。

运行示例

  1. 使用命令提示定位到包含生成的可执行文件的目录。

  2. 在命令行上键入 TimedCallback.exe。

    5sadtxzb.alert_note(zh-cn,VS.90).gif说明:

    此示例生成一个控制台应用程序。您必须在控制台窗口中启动它才能查看相应的输出。

备注

下面带项目符号的内容简要介绍本示例使用的技术和类。

  • 线程计时器

    • Timer使用它可以创建用于相对时间或绝对时间的定期或单一计时器。此示例创建一个定期计时器,该计时器每两秒调用委托一次,直到应用程序退出为止。
  • 线程池 尽管本示例没有显式引用 ThreadPool 类,但 Timer 类使用公共语言运行库管理的线程池异步调用委托来响应计时器事件。本示例中的计时器每两秒使用线程池中的辅助线程一次。

  • 委托

    • TimerCallback用于为计时器创建类型安全的回调方法。

有关通过异步方法调用使用计时器的更多信息,请参见源代码文件中的注释。

请参见

概念

线程与线程处理

参考

AutoResetEvent

Delegate

Interlocked

Mutex

System.Threading

ThreadPool

WaitCallback

WaitHandle

Timer

其他资源

线程处理对象和功能