在 C# 中重置计时器
本文将讨论使用 C# 编程语言重置计时器。
C#
中的 System.Timer
类
C# 中的这个 System.Timer
类提供了一种机制,可以在经过一定时间后执行一段代码,并且这段代码可能会被执行多次。
在 C#
中使用 Timer.AutoReset
重置计时器
当计时器的 interval
结束时,AutoReset
允许它自行重置并再次从 0
开始计数。如果 enabled 属性设置为 true
,则倒计时将开始,但如果将其设置为 false
,则需要通过调用 Start()
方法来重新启动计时器。
当程序的定时器功能已经完成时,程序应该被终止并且它的资源可以在其他上下文中使用。换句话说,Timer.AutoReset
读取或写入一个布尔值,该值指示计时器应该只引发一次 false
还是多次 true
引发 Elapsed
事件。
AutoReset
事件的语法如下。
public bool AutoReset { get; set; }
这种事件可以用于各种事情,但它特别适合在 Web 应用程序中使用以确定连接的状态。在视频游戏期间使用的秒表是另一种潜在用途。
下面的示例演示如何构造一个带有 Elapsed 事件的 Timer
,该事件在 2 秒
过去时触发。然后控制台会显示 My name is DelftStack
作为相关事件处理程序的输出。
-
首先,我们必须导入以下库。
using System; using System.Timers;
-
在
Shanitimer
类中声明计时器变量,我们将其称为t
,确保它可用于所有方法。private static System.Timers.Timer t;
-
我们将按照内置类设置一个计时器。
-
AutoReset
计时器会在经过一个间隔后重置并开始新的计数。如果设置为false
,则必须重置计时器。 -
2000
是可以根据情况更改的时间间隔。你可以在设置Interval
参数后以毫秒
为单位指定要在运行所需代码之前等待多长时间。
t.AutoReset = true; t.Enabled = true; t.Interval = 2000; t.Elapsed += ontime;
-
Elapsed
属性指定要在该时间之后运行的函数。在 C# 中定义事件处理程序可以使用+=
更快地完成,就像我所做的那样,它指示计时器订阅事件处理程序。
-
-
我们还在控制台上显示了一些警报消息。
Console.WriteLine(" Waiting for Command "); Console.WriteLine(" Click on Enter Button to Exit Console "); Console.ReadLine();
-
使用
Stop()
函数停止计时器。Dispose()
函数应该用于在计时器完成运行后释放它所消耗的任何资源。t.Stop(); t.Dispose();
-
ontime()
方法需要Object
和System.Timers.ElapsedEventArgs s
参数。private static void ontime(Object source, System.Timers.ElapsedEventArgs s) { Console.WriteLine(" My name is DelftStack "); }
完整源代码:
using System;
using System.Timers;
class Shanitimer {
private static System.Timers.Timer t;
static void Main() {
t = new System.Timers.Timer();
t.AutoReset = true;
t.Enabled = true;
t.Elapsed += ontime;
t.Interval = 2000;
Console.WriteLine(" Waiting for Command ");
Console.WriteLine(" Click on Enter Button to Exit Console ");
Console.ReadLine();
t.Stop();
t.Dispose();
}
private static void ontime(Object source, System.Timers.ElapsedEventArgs s) {
Console.WriteLine(" My name is DelftStack ");
}
}
输出:
Waiting for Command
Click on Enter Button to Exit Console
My name is DelftStack
My name is DelftStack
//After this line, I pressed enter
相关文章
在 C# 中将 List<string>转换为字符串
发布时间:2024/03/16 浏览次数:198 分类:编程语言
-
在 C# 中,有两种主要方法可用于将 List
转换为字符串变量,Linq 方法和 String.Join()函数。
在 C# 中将 List<string>转换为字符串
发布时间:2024/03/16 浏览次数:171 分类:编程语言
-
在 C# 中,有两种主要方法可用于将 List
转换为字符串变量,Linq 方法和 String.Join()函数。
在 C# 中将 List<string>转换为字符串
发布时间:2024/03/16 浏览次数:187 分类:编程语言
-
在 C# 中,有两种主要方法可用于将 List
转换为字符串变量,Linq 方法和 String.Join()函数。
在 C# 中发出 HTTP POST Web 请求
发布时间:2024/02/04 浏览次数:131 分类:编程语言
-
在 C# 中,可以使用 3 种主要方法来发出 HTTP POST Web 请求:WebClient 类,HttpWebRequest 类和 HttpClient 类。本教程将讨论在 C# 中发出 HTTP POST Web 请求的方法。使用 C# 中的 WebClient 类发出 HTTP POST Web 请求
在 C# 中运行命令提示符命令
发布时间:2024/02/04 浏览次数:130 分类:编程语言
-
Process 类可用于在 C# 中运行命令提示符命令。在 C# 中使用 Process.Start() 函数运行命令提示符命令
在 C# 中调整图像大小
发布时间:2024/02/04 浏览次数:203 分类:编程语言
-
有两种主要方法可用于在 C# 中调整图像的大小,Bitmap 类构造函数和 graphics.DrawImage()函数。在本教程中,我们将讨论在C#中调整图像大小的方法。我们将带您完成整个过程,从加载原始图像到保
在 C# 中下载图片
发布时间:2024/02/04 浏览次数:138 分类:编程语言
-
有 3 种主要方法可用于下载 C# 中的图片,WebClient.DownloadFile()函数,Bitmap 类和 Image.FromStream()函数。在 C# 中使用 WebClient 类下载图片 WebClient 类提供了用于向 C# 中的 URL 发送数据和从 URL 接收数据
在 C# 中使用秒表
发布时间:2024/02/04 浏览次数:139 分类:编程语言
-
我们可以使用 Stopwatch 类来计算 C# 中的经过时间。使用 C# 中的秒表类计算经过时间 Stopwatch 类在 C# 中准确测量经过的时间。
在 C# 中获取可执行路径
发布时间:2024/02/04 浏览次数:200 分类:编程语言
-
有 3 种主要方法可用于获取 C# 中程序的可执行路径,即 Assembly 类,AppDomain 类和 Path 类。本教程将介绍获取 C# 代码的可执行路径的方法。使用 C# 中的 Assembly 类获取可执行路径