タグ付けされた質問 「time-precision」

10
System.currentTimeMillisとSystem.nanoTime
精度対 精度 ゲームでのオブジェクトの位置を更新するときにSystem.currentTimeMillis()またはSystem.nanoTime()を使用する必要があるかどうかを知りたいですか?彼らの動きの変化は、最後の電話からの経過時間に正比例しているので、できるだけ正確にしたい。 私は、異なるオペレーティングシステム間にいくつかの深刻な時間解決の問題があることを読みました(つまり、Mac / Linuxはほぼ1 msの解像度を持っていますが、Windowsは50msの解像度を持っています?)。私は主にWindowsでアプリを実行しており、50msの解像度はかなり不正確なようです。 私がリストした2つよりも優れたオプションはありますか? 提案/コメントはありますか?

7
C#を使用してミリ秒単位で時間を取得する
時間をミリ秒単位で取得する必要があるプログラムを作成しています。時間によって、それ自体と決して等しくなることのない数を意味し、常に1秒前よりも1000大きい数です。に変換DateTime.NowしTimeSpanてTotalMillisecondsそこから取得しようとしましたが、完全に正確ではないと聞きました。 これを行う簡単な方法はありますか?


6
C#でタイムスタンプを作成する関数
私は疑問に思っていました、日時からc#でタイムスタンプを作成する方法はありますか?Compact Frameworkでも機能するミリ秒の精度値が必要です(DateTime.ToBinary()がCFに存在しないため)。 私の問題は、この値をデータベースにとらわれない方法で保存したいので、後で並べ替えて、他の値よりも大きい値を見つけることができます。

7
C#DateTime.Now精度
いくつかの単体テストを行っているときに、DateTime.UtcNowで予期しない動作が発生しました。DateTime.Now/UtcNowを連続して呼び出すと、より正確なミリ秒の増分をキャプチャするのではなく、予想よりも長い時間間隔で同じ値を返すようです。 正確な時間測定を行うのにより適したストップウォッチクラスがあることは知っていますが、誰かがこの動作をDateTimeで説明できるかどうか知りたいですか?DateTime.Nowの正式な精度は文書化されていますか(たとえば、50ミリ秒以内に正確ですか)?なぜDateTime.Nowは、ほとんどのCPUクロックが処理できるものよりも精度が低くなりますか?たぶん、それは最も一般的な分母CPUのために設計されただけでしょうか? public static void Main(string[] args) { var stopwatch = new Stopwatch(); stopwatch.Start(); for (int i=0; i<1000; i++) { var now = DateTime.Now; Console.WriteLine(string.Format( "Ticks: {0}\tMilliseconds: {1}", now.Ticks, now.Millisecond)); } stopwatch.Stop(); Console.WriteLine("Stopwatch.ElapsedMilliseconds: {0}", stopwatch.ElapsedMilliseconds); Console.ReadLine(); }
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.