私のC#アプリケーションでは、数秒ごとにタスクを実行する必要があります。実行がこの間隔で正確に行われることは非常に重要です。数ミリ秒を与えるか、または取る。特定の間隔でアクティビティを実行する
私はタイマーを使用しようとしましたが、数分後に徐々に時間が移動します。次のように 私が使用するコードは次のとおりです。
System.Timers.Timer timerObj = new System.Timers.Timer(10 * 1000);
timerObj.Elapsed += timerObj_Elapsed;
timerObj.AutoReset = true;
timerObj.Start();
static void timerObj_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
DateTime currentTime = DateTime.Now;
Console.WriteLine(currentTime.ToString("HH:mm:ss.fff"));
}
は、この種の活動を行うには良い方法はありますか?
あなたはタイムラプスのためのBackgroundWorkerの検査とのより良い運を持っているかもしれないが、常にすべてのリセットなど、非常にわずかな遅れがあるように起こっています。 –
私はbackgroundworkerクラスを使って同じことを試みました。しかし、ドリフトはまだそこにある。 –