title: Best way to disable a System.Threading.Timer
body: <p>I have a <code>System.Threading.Timer</code> that will be toggled on and off. I know of two methods to turn off the timer:</p>
  
  <ol>
  <li>Call <code>Timer.Change(-1,-1)</code>  </li>
  <li>Dispose the timer, and create a new one when needed  </li>
  </ol>
  
  <p>Which one is better, in terms of resources and performance? Is calling <code>Change(-1,-1)</code> a CPU heater? Is it expensive to create a timer?</p>