Ошибки NHibernate Throwing в сценариях с многопоточностью - PullRequest
0 голосов
/ 09 августа 2011

У меня проблемы при тестировании моего кода Nhibernate.Я использую версию Nhibernate 3.1 и использование Nhibernate предоставляется через службу WCF.Он работает правильно в сценарии с одним потоком, а когда он подвергается нагрузочному тесту, он выдает несколько ошибок.Ниже приведены некоторые ошибки, возникающие во время нагрузочного теста.

1) NHibernate.DuplicateMappingException: Duplicate class/entity mapping 2) System.ObjectDisposedException: Session is closed! Object name: 'ISession'. at NHibernate.Impl.AbstractSessionImpl.ErrorIfClosed() at NHibernate.Impl.AbstractSessionImpl.CheckAndUpdateSessionStatus() at NHibernate.Impl.SessionImpl.get_Batcher() Это потому, что я охватываю один сеанс несколькими потоками?

Я использовал контекстные сеансыи это тоже не сильно помогло.

Может кто-нибудь помочь мне найти решение для этого?

1 Ответ

0 голосов
/ 09 августа 2011

Вы должны создать одну сессию на поток Каждый раз, когда вы создаете поток, создайте для него сеанс и оставьте его открытым в течение всего потока.

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