は、私は、次のボディを持つ単純なコンソールアプリケーションがあります。DateTime.Now.Ticksに一貫性がないのはなぜですか?
Console.WriteLine(DateTime.Now.Ticks.ToString());
Console.WriteLine(DateTime.Now.Ticks.ToString());
Console.WriteLine(DateTime.Now.Ticks.ToString());
Console.WriteLine(DateTime.Now.Ticks.ToString());
Console.WriteLine(DateTime.Now.Ticks.ToString());
Console.WriteLine(DateTime.Now.Ticks.ToString());
Console.WriteLine(DateTime.Now.Ticks.ToString());
Console.WriteLine(DateTime.Now.Ticks.ToString());
Console.WriteLine(DateTime.Now.Ticks.ToString());
Console.WriteLine(DateTime.Now.Ticks.ToString());
をそして、これらは、3回の異なる実験の出力です:
635258949900018675
635258949900028676 // +10001
635258949900028676 // +0
635258949900038677 // +10001
635258949900038677 // +0
635258949900038677 // +0
635258949900038677 // +0
635258949900038677 // +0
635258949900038677 // +0
635258949900038677 // +0
635258949937502423
635258949937512424 // +10001
635258949937512424 // +0
635258949937512424 // +0
635258949937512424 // +0
635258949937522425 // +10001
635258949937522425 // +0
635258949937522425 // +0
635258949937522425 // +0
635258949937522425 // +0
635258961813519906
635258961813529907 // +10001
635258961813529907 // +0
635258961813529907 // +0
635258961813529907 // +0
635258961813539908 // +10001
635258961813539908 // +0
635258961813539908 // +0
635258961813539908 // +0
635258961813539908 // +0
一つは、これらの値は以来、異なるようにするために、それが正常であると思うかもしれませんConsole.WriteLine
の実行に時間がかかります。行の間隔は10001の一定値ですが、何とかこの値はすべてのステップで前の値に加算されません。ときどきそうであることもあります。なぜこのようなことが起こるのだろうと思っています。
それはあなたが求めているものは明らかではない - との間に間隔を2つの異なる値は、私が知る限り、常に10001ティックであるように見えます。あなたは本当に変化の間に呼び数が異なるのはなぜですか?そうであれば、あなたのマシンでどれだけのことが起こっているのか、どれだけ変化するのかを覚えておいてください。 –
申し訳ありません。私はそれがすべてのステップで10001ずつ増加していないことを意味します。時々それは増加し、ときにはそれはしません。 –
ありがとう@JonSkeet。ほとんどの場合、datetimeに関連する質問にはほとんど応答します。私は長い間あなたが答えを探しているという私の別の質問を見ることを望みました。あなたは時間があまりないと知っていますが、これについてあなたの意見をお寄せください。前もって感謝します。 http://stackoverflow.com/questions/20924278/why-does-timespan-tostring-require-escaping-separators –