NHibernate mysql连接未关闭?

NHibernate mysql连接未关闭?,mysql,nhibernate,Mysql,Nhibernate,我将NHibernate用于mySQL 5,我有点不确定NHibernate是否真的关闭了与mySQL的连接 这是我用来将玩家实体保存到数据库的代码: using (ISession session = SessionFactory.OpenSession()) { using (ITransaction transaction = session.BeginTransaction()) {

我将NHibernate用于mySQL 5,我有点不确定NHibernate是否真的关闭了与mySQL的连接

这是我用来将玩家实体保存到数据库的代码:

        using (ISession session = SessionFactory.OpenSession())
        {
            using (ITransaction transaction = session.BeginTransaction())
            {
                session.Save(player);
                transaction.Commit();
            }
        }
运行完这段代码后,我使用

show status like 'Conn%' ;
并且该值每增加1次

因此,插入播放机10次(=启动程序10次)会将连接计数增加10。但是NHibernate会话的session.IsClosed属性为false

为了释放NHibernate资源并关闭连接,我还需要做其他事情吗?连接是否共用/超时


如果有人能给我一个提示就太好了

我很确定连接正在关闭。ISession上的dispose方法就是这样做的。因此,退出使用块时不太可能保持打开状态

另外,据我所知,连接通常仅在写入/读取数据库时打开。会话可能已打开,但这并不意味着连接也已打开

加上事实上,在中,它说关键字Connections意味着:

到MySQL服务器的连接尝试次数(成功与否)。

并且没有说明连接的当前状态(打开或不打开),这让我相信连接已关闭


PS:您应该使用线程\u connected来查看打开的连接。

某些版本中的MySQL.Data dll中存在一个错误,导致我出现同样的问题。确保将连接器/网络更新为最新版本。这为我解决了问题