C# 实现微秒级高精度定时器
时间: 2023-09-02 08:06:38 浏览: 274
一种制作微秒级精度定时器的方法.rar_C++ 定时器_timer_微秒定时器_高精度定时_高精度定时器
5星 · 资源好评率100%
在C#中,可以使用`Stopwatch`类来实现微秒级高精度定时器。`Stopwatch`类提供了用于测量时间间隔的功能。以下是一个示例代码:
```csharp
using System;
using System.Diagnostics;
class Program
{
static void Main()
{
Stopwatch stopwatch = new Stopwatch();
// 启动定时器
stopwatch.Start();
// 执行您想要计时的代码
// 停止定时器
stopwatch.Stop();
// 获取经过的时间(以微秒为单位)
long elapsedMicroseconds = stopwatch.ElapsedTicks / (Stopwatch.Frequency / (1000L * 1000L));
Console.WriteLine($"经过的时间:{elapsedMicroseconds} 微秒");
}
}
```
在以上示例中,我们首先创建了一个`Stopwatch`对象`stopwatch`。通过调用`Start`方法,我们启动了定时器。然后,在执行您想要计时的代码后,调用`Stop`方法停止定时器。通过访问`ElapsedTicks`属性,我们获得了经过的时间间隔的计数值。最后,通过将计数值除以`(Stopwatch.Frequency / (1000L * 1000L))`来将计数值转换为微秒。输出结果表示经过的时间。
请注意,使用`Stopwatch`类需要在程序中添加`using System.Diagnostics;`语句。另外,定时器的精度取决于操作系统和硬件的支持,可能不是严格的微秒级。
阅读全文