title: C# Thread.Sleep(1000) takes much more than 1000ms on some pc
body: <p>I write a c# program to count down 5 seconds. What I do is:</p>
  
  <pre><code>        new Task(() =&gt;
          {
  
                  try
                  {
                          this.Invoke((Action)delegate()
                          {
                              label1.Text = "5"; // 4, 3, 2..etc
                          });
                      }
                      Thread.Sleep(1000);
                  }
                  catch
                  {
                      // form could be disposed
                      break;
                  }
  
              }
  
          }).Start();
  </code></pre>
  
  <p>This works on my PC, however, when I copied the program to a window tablet, the Thread.Sleep(1000) gives more than 1 second. In other words, it takes more than 5 seconds (in fact more than 10 seconds) to update the label from 5,4,3,2,1. Alternatively, it takes too long to update label1.Text = "5", etc? It does not make sense to me. I wonder what is wrong? </p>