class A
{
   public event EventHandler AEvent;
}
class B
{
   private A _foo;
   private int _bar;
   public void AttachToAEvent()
   {
      _foo.AEvent += delegate()
      {
         ...
         UseBar(_bar);
         ...
      }
   }
} 
Так как делегат захватывает переменную this._bar, он неявно удерживается в экземпляре B? Можно ли ссылаться на экземпляр B через обработчик событий и захваченную переменную экземпляром A?
Было бы иначе, если бы _bar была локальной переменной метода AttachToAEvent?
Так как в моем случае экземпляр A живет намного дольше и намного меньше, чем экземпляр B, я беспокоюсь, чтобы это вызвало утечку памяти.
