有没有办法在 C# 中以高分辨率频率执行方法,例如每 100 微秒?
那么两种不同频率的不同方法呢,例如 Method1 每 0.1 ms 和 Method2 0.3 ms?
MSDN 有关于将事件处理程序附加到Systems.Timers.Timer
类的文档,如下所示:
public static void Main()
{
System.Timers.Timer aTimer = new System.Timers.Timer();
aTimer.Elapsed += new ElapsedEventHandler(Method);
aTimer.Interval = 2000;
aTimer.Enabled = true;
GC.KeepAlive(aTimer);
}
但是System.Timers.Timer
当我对它进行基准测试时,它的精度只有 15~16 毫秒。我的 CPU 性能计数器的精度为 0.1 毫秒及以下,但我找不到将事件处理程序附加到Stopwatch
类的方法。
另外,当我以不同的频率执行这两种方法时,是否需要注意一些线程问题?
谢谢!