title: Debugging whilst paused and 'cannot evaluate expression'
body: <p>Using Visual Studio, after attaching to a Process and pressing Pause (Break-All), you switch to the desired thread and use the Quick Watch window to check out some data, say</p>
  
  <pre><code>MySingletonClass.Instance.Data
  </code></pre>
  
  <p>Sometimes I either get this:</p>
  
  <blockquote>
    <p>Cannot evaluate expression because the current thread is in a sleep, wait, or join</p>
  </blockquote>
  
  <p>or this (when trying to view certain properties of the data):</p>
  
  <blockquote>
    <p>Cannot evaluate expression because a native frame is on top of the call stack.</p>
  </blockquote>
  
  <p>Quite frankly, I don't care, I just want to see the data! I know there are various ways to get around this, namely:</p>
  
  <ol>
  <li>Setting a breakpoint on the thread and waiting till it gets hit (cumbersome, not always possible)  </li>
  <li>Taking a dump of the process and loading back into VS (even then I still get the 2nd error)  </li>
  <li>windbg</li>
  </ol>
  
  <p>Given you <em>could</em> see this data if you presumably used windbg why is it we all can't take advantage of the much easier and prettier VS to inspect objects when attaching to a process?</p>