Как закрыть сессию NHibenrate при использовании ThreadPool? - PullRequest
1 голос
/ 11 июля 2011

Так как потоки многократно используются в ThreadPool, я не могу сказать, когда закрывать сеансы NHibernate для каждого потока, чтобы высвободить использованные ресурсы.

Должен ли я создавать свои собственные потоки (чтобы они были уникальными) или есть лучший способ сделать это с помощью ThreadPool?

Ответы [ 2 ]

0 голосов
/ 11 июля 2011

Я бы настроил его так, чтобы в каждом потоке был один сеанс. Это, вероятно, самый простой способ убедиться, что вы не столкнетесь с проблемами, когда у вас есть поток, завершающий сеанс, который используется другим потоком.

0 голосов
/ 11 июля 2011

Я не вижу проблемы. Возможно, вам придется уточнить или добавить код в ваш вопрос.

Каждый поток имеет свой собственный метод. Просто выделите сеанс в начале метода и очистите его в конце. То же самое относится и к потоку пула потоков.

Не забудьте обернуть весь код потока в try / catch, иначе ваше приложение потерпит крах, если исключение не будет обработано.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...