title: Suspend a thread from another thread in VB.NET
body: <p>I have a window which runs from a thread, let's call it MainThread, and a background thread which performs other non-graphical tasks.</p>
  
  <p>Sometimes the background thread will call the <code>MessageBox.Show(...)</code> method (which is <strong>modal</strong> and stops the background thread). Before this call, I would like to suspend the MainThread and resume it after so that my MainWindow's controls are disabled while the <code>messageBox</code> is shown.</p>
  
  <p>So my questions are: </p>
  
  <ul>
  <li>How do I access the mainThread from the backgroundThread? </li>
  <li>How do I suspend/resume it (Considering Thread.suspend is depricated)?</li>
  </ul>