Сессия nHibernate и многопоточность

У меня был метод с большим количеством постоянных вызовов, который использовал сеанс nHibernate, он работал, все в порядке. Но мне нужно было реорганизовать этот метод, извлекая метод из содержимого внутри цикла, по многопоточным причинам. Затем я создал класс с этим методом. Это похоже на обычный рефакторинг, но сеанс nHibernate внутри этого вызова метода прерывается, без контекста, я не завершал его в любой момент.У nHibernate проблемы с многопоточностью? Даже когда у меня исполняется только один поток, у меня та же проблема.

Я использую nHibernate Session через шаблон SessionFactory и Façade, это означает, что сессия не является полем этих объектов, она глобальна в SessionFactory.

Делая это немного более ясным:

ДО:

Method()
{
... persistence calls
foreach(Thing..)
{
...persistence calls for each thing (1)
}
...
}

ПОСЛЕ:

Method()
{
... persistence calls
foreach(Thing..)
{
create a thingResolver object with some data
open a new thread with thingResolver.Method (1)
starts this thread
}
.. waits for finishing threads and continues
}

Наша фабрика сессий nHibernate поддерживает потоки и сохраняет / получает сессию nHibernate для каждого потока. Сейчас работает хорошо;)

Ответы на вопрос(2)

Ваш ответ на вопрос