首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何关闭NHibernate连接?

问如何关闭NHibernate连接?
EN

Stack Overflow用户
提问于 2009-08-26 18:19:03
回答 1查看 1.7K关注 0票数 3

我用ASP.NET MVC,NHibernate和MySQL做了一个网站。在我的项目中,我有一些repositories类,每个类都使用如下代码的方法:

代码语言:javascript
复制
using(ISession session = NHibernateHelper.OpenSession()) {
    using(ITransaction transaction = session.BeginTransaction()) {
        session.Save(cidade);
        transaction.Commit();
    }
}

我来自Classic ASP,所以如果与MySQL的连接实际上是关闭的,我会很确定。事实上,如果有像经典ASP上那样的连接,我是常用的。

我应该做些什么来显式地关闭连接/会话,或者它是“自动关闭的”?

如果我的服务器上有很多打开的连接,有什么办法吗?

非常感谢。

EN

回答 1

Stack Overflow用户

发布于 2009-08-26 19:18:51

会话以一种非常有效的方式进行连接管理,所以您不必手动执行任何操作,只要您没有忘记释放会话(就像您一样)。在会话的整个生命周期中,连接并不是打开的,而是在需要时才打开。打开的数据库连接数不会超过连接池中的连接数,默认情况下连接池中的连接数为100。100个连接在几乎每个场景中都不会很多,所以当打开大量连接时,您不需要做任何事情。在一个非常繁忙的网站上,你甚至不会使用所有的100个连接,由于won请求的线程池的大小,它将是大约20-40个开放的连接。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1336589

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档