title: What are the differences between System.Threading.Timer and creating your own background tick thread in C#
body: <p>I have a background tick function that is structured as follows:</p>
  
  <pre><code>    System.Threading.Thread myTimerThread = new Thread(this.Tick);
  
      private void Tick(){
         do{
            //do stuff
            System.Threading.Sleep(1000L);
         }while(true)    
      }
  </code></pre>
  
  <p>However, there is also a System.Threading.Timer class that does this for me. What are the differences in using the built in Timer class present in System.Threading rather than creating my own background thread with a Tick function?</p>