title: Do C# 4.0 BCL SpinLock's spin/block when they can't get a lock?
body: <p>Given the following code:</p>
  
  <pre><code>...
  private static SpinLock logLock = new SpinLock(false);
  ...
  
  private static void ThreadFunc()
  {
      bool lockTaken = false;
      logLock.Enter(ref lockTaken)
      {
          try
          {
              // do stuff with during an acquired SpinLock
          }
          finally
          {
              logLock.Exit();
          }
      }
  }
  </code></pre>
  
  <p>If the Enter block "fails" because it receives a false on the lock being acquired, does the current thread spin like a spinlock and wait until it can acquire it or is this block simply bypassed and that thread loses out ?</p>
  
  <p>Thanks,</p>
  
  <p>Scott</p>