title: Lock statement - does it always release the lock?
body: <p>I have recently read <a href="http://blogs.msdn.com/b/ericlippert/archive/2009/03/06/locks-and-exceptions-do-not-mix.aspx" rel="nofollow">this post from Eric Lippert regarding the lock implementation in c#</a> and still some questions remain.</p>
  
  <p>In 4.0 implementation if a thread abort or any cross thread exception occurs just before the Monitor.Exit(temp) in the finally block is executed - would that keep the lock on the object?</p>
  
  <p>Is there any possibility for an exception to occur at this level, leaving the object still in a locked state?</p>