Прежде всего, не связывайтесь с приоритетом потока, если что-то из того, что вы делаете, сделает его медленнее.
Во-вторых, как сказал Фил, вам нужно кэшировать свой SessionFactory или выперестраивать конфигурацию каждый раз, когда вам нужен объект сеанса.
Вы можете сделать что-то подобное или переместить код в if
в статический конструктор класса:
private static SessionFactory _factory = null;
public static ISession ObterSessao()
{
if(_factory == null) {
string ConnectionString = ConfigurationHelper.LeConfiguracaoWeb("EstoqueDBNet"); // My Connection string goes here
var config = Fluently.Configure()
.Database(FluentNHibernate.Cfg.Db.MySQLConfiguration.Standard.ConnectionString(ConnectionString));
config.Mappings(m => m.FluentMappings.AddFromAssembly(Assembly.GetExecutingAssembly()));
_factory = config.BuildSessionFactory();
}
return _factory.OpenSession();
}