should be as simple as updating 3 files: IUnitOfWorkFactory to public interface IUnitOfWorkFactory : IDisposable
then implement the members here: ActiveRecordUnitOfWorkFactory (empty member) NHibernateUnitOfWorkFactory (call sessFactory.Dispose()) build, create patch, submit, done:) On Oct 24, 10:43 am, "Ayende Rahien" <[EMAIL PROTECTED]> wrote: > Please sumbit a patch with this > > On Fri, Oct 24, 2008 at 4:42 PM, Brian Rumschlag <[EMAIL PROTECTED]>wrote: > > > > > The problem is that the maintenance thread in the memcache client is > > preventing an implicit Dispose() of the SF > > I added an explicit dispose method to IUnitOfWorkFactory, called it at > > the end of application, and everything shut down properly. > > I'll try making the interface implement IDisposable instead. > > > On Oct 24, 10:16 am, "Ayende Rahien" <[EMAIL PROTECTED]> wrote: > > > I don't think we call SF.Close(); > > > We just the the app domain shut down clean up all our resources. > > > > On Fri, Oct 24, 2008 at 3:47 PM, Jason Meckley <[EMAIL PROTECTED] > > >wrote: > > > > > SessionFactory.Dispose() isn't called explicitly. not from what I can > > > > see. I would assume this is done in NHibernateUnitOfWorkFactory which > > > > holds the instance of the factory. but IUnitOfWorkFactory does not > > > > implement IDisposable. > > > > > when the application ends the object is gone (for lack of a better > > > > term). I would assume that when IoC.Rest() is called this disposes > > > > the windsor container, which in tern disposes components, etc. if > > > > that's the case then we may be able to update IUnitOfWorkFactory to > > > > inherit IDisposable. then set sessionFactory.Dispose() int the > > > > concrete member. > > > > > Thoughts? > > > > > On Oct 24, 9:17 am, Brian Rumschlag <[EMAIL PROTECTED]> wrote: > > > > > I have an application that is using memcached as it's second-level > > > > > cache. > > > > > > The MemCached library has a maintenance thread that runs until the > > > > > caching system is destroyed by CacheProvider.Stop(), which is called > > > > > by SessionFactory.Close. > > > > > > SessionFactory.Close is called by SessionFactory.Dispose(), but that > > > > > doesn't seem to be getting called either. > > > > > > Obviously, you wouldn't want to close the SessionFactory when the > > > > > UnitOfWork was disposed, but I can't find where in > > > > > Rhino.Commons.NHibernate SessionFactory.Close is called. > > > > > > Any thoughts? > > > > > Brian Rumschlag --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Rhino Tools Dev" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/rhino-tools-dev?hl=en -~----------~----~----~----~------~----~------~--~---
