title: Access property on locked object, without lock statement
body: <p>Say I have the following code:</p>
  
  <pre><code>public class FooBar
  {
      public int Var1{ get; set; }
  }
  
  public static void main( string[] args )
  {
      var foo = new FooBar();
      //Start new thread ...
      {
          lock( foo )
          {
              foo.Var1 = 1;
              Thread.Sleep( 10000 );
          }
      }
  
      //Start another thead ...
      {
          Console.WriteLine( foo.Var1 );
      }
  }
  </code></pre>
  
  <p>Will the second thread be able to access the property and write to the console while the other thread is sleeping and have the lock, or will it have to wait until the other thread finishes sleeping and exists?</p>