Hi there, I'm dealing with an application with a lot of threads: it's not a Web/Desktop app, but a sort of Windows service, so it's expected to have an "infinite" lifetime. Different components need to manipulate data in different threads, at the same time. So all the components have to use the same ISession, even from different threads. Running some tests, I randomly got some random exceptions:
- NHibernate.Exceptions.GenericADOException: could not initialize a collection ... System.InvalidOperationException: Index was outside bounds of the array - NHibernate.ADOException: There was a problem converting an IDataReader to NDataReader ---> SYstem.InvalidOperationException: Invalid attempt to call MetaData when reder is closed So I'm wondering: can those exception be caused by the simultaneous session access? Are there any "best practices" about sessio management in a multi-threadedscenario? And if I create one session per thread? In this laste case, as some instances need to be shared among different components and different therads, this would lead those instances to be bound to different session objects... and, as far as I remember, it's not possible, right? thanks in advance, Giulio -- -- You received this message because you are subscribed to the Google Groups "nhusers" 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/nhusers?hl=en.
