title: BackgroundWorker vs background Thread
body: <p>I have a stylistic question about the choice of background thread implementation I should use on a windows form app. Currently I have a <code>BackgroundWorker</code> on a form that has an infinite <code>(while(true))</code> loop. In this loop I use <code>WaitHandle.WaitAny</code> to keep the thread snoozing until something of interest happens. One of the event handles I wait on is a "<code>StopThread</code>" event so that I can break out of the loop. This event is signaled when from my overridden <code>Form.Dispose()</code>. </p>
  
  <p>I read somewhere that <code>BackgroundWorker</code> is really intended for operations that you don't want to tie up the UI with and have an finite end - like downloading a file, or processing a sequence of items. In this case the "end" is unknown and only when the window is closed. Therefore would it be more appropriate for me to use a background Thread instead of <code>BackgroundWorker</code> for this purpose?</p>