title: Why is DateTime.Now.Ticks not consistent?
body: <p>I have a simple console application with the following body:</p>
  
  <pre><code>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());
  </code></pre>
  
  <p>And these are the outputs of three different runs:</p>
  
  <pre><code>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
  </code></pre>
  
  <p>One might guess it is normal for these values to be different since it takes time between <code>Console.WriteLine</code> executions. The interval between the lines is a constant value of 10001, but somehow this value is not added to the previous one at EVERY step. Sometimes it is, sometimes it is not. I am wondering why this happens.</p>