2011-03-24 58 views
0

我使用Configuration.AppendListeners为一些addional侦听器。对于所谓的侦听器,析构函数只在程序结束时调用 - 没有额外的侦听器,析构函数在System.GC.Collect上被调用。内存泄漏与addionatl NHibernate的听众?

广告解决方法,我实现了IDisposable,我调用下面的方法:

private void CleanUpConfigurationListener() 
    { 
     if (configuration == null) return; 
     foreach (NHibernate.Event.ListenerType item in Enum.GetValues(typeof(NHibernate.Event.ListenerType))) 
     { 
      configuration.SetListener(item, null); 
     } 
    } 

有了它,析构函数被再次调用。

这是内存泄漏吗?

我使用NH 3.0因为流利NHibernate(1.2)。

感谢您的回答。

回答

1

这是我的错。我发现问题:

代码为每个新的DAL-Session对象创建一个新的SessionFactory :(