title: Can using lambdas as event handlers cause a memory leak?
body: <p>Say we have the following method:</p>
  
  <pre><code>private MyObject foo = new MyObject();
  
  // and later in the class
  
  public void PotentialMemoryLeaker(){
    int firedCount = 0;
    foo.AnEvent += (o,e) =&gt; { firedCount++;Console.Write(firedCount);};
    foo.MethodThatFiresAnEvent();
  }
  </code></pre>
  
  <p>If the class with this method is instantiated and the <code>PotentialMemoryLeaker</code> method is called multiple times, do we leak memory?</p>
  
  <p>Is there any way to unhook that lambda event handler after we're done calling <code>MethodThatFiresAnEvent</code>?  </p>