我有一个简单的DB管理器类(一个比它的能力更值得的名字):

class DbManager

{

private MySqlConnectionStringBuilder _connectionString;

public DbManager()

{

_connectionString = new MySqlConnectionStringBuilder();

_connectionString.UserID = Properties.Database.Default.Username;

_connectionString.Password = Properties.Database.Default.Password;

_connectionString.Server = Properties.Database.Default.Server;

_connectionString.Database = Properties.Database.Default.Schema;

_connectionString.MaximumPoolSize = 5;

}

public MySqlConnection GetConnection()

{

MySqlConnection con = new MySqlConnection(_connectionString.GetConnectionString(true));

con.Open();

return con;

}

}

然后我在其他地方有另一个类来表示其中一个表中的记录,我填充它如下:

class Contact

{

private void Populate(object contactID)

{

using (OleDbConnection con = DbManager.GetConnection())

{

string q = "SELECT FirstName, LastName FROM Contacts WHERE ContactID = ?";

using (OleDbCommand cmd = new OleDbCommand(q, con))

{

cmd.Parameters.AddWithValue("?", contactID);

using (OleDbDataReader reader = cmd.ExecuteReader())

{

if (reader.HasRows)

{

reader.Read();

this.FirstName = reader.GetString(0);

this.LastName = reader.GetString(1);

this.Address = new Address();

this.Address.Populate(ContactID)

}

}

}

}

}

}

class Address

{

private void Populate(object contactID)

{

using (OleDbConnection con = DbManager.GetConnection())

{

string q = "SELECT Address1 FROM Addresses WHERE ContactID = ?";

using (OleDbCommand cmd = new OleDbCommand(q, con))

{

cmd.Parameters.AddWithValue("?", contactID);

using (OleDbDataReader reader = cmd.ExecuteReader())

{

if (reader.HasRows)

{

reader.Read();

this.Address1 = reader.GetString(0);

}

}

}

}

}

}

现在我认为所有using语句都会确保连接在完成后返回到池中,为下次使用做好准备,但是我有一个循环创建了数百个这样的联系人并填充它们,似乎连接没有被释放.

连接,命令和阅读器都在自己的使用语句中.

c# mysql 链接池溢出_C#MySQL连接池限制,并清理连接相关推荐

  1. mac mysql 链接_mac上搭建mysql环境配置和Navicat连接mysql

    mac上搭建mysql环境配置 注意:mysql版本要和你的MAC版本保持一致 2.一路傻瓜式点击下一步 此处选择"Use Legacy Password Encryption", ...

  2. aws mysql链接_AWS Lambda和MySQL连接处理

    我目前正在使用awslambda(python3.6)与MySQL数据库进行通信.我还有Slack命令来触发对数据库的查询.有时,我注意到,我可以直接通过MySQL Workbench进行更改,然后通 ...

  3. c# mysql数据库查询语句_C# mysql 查询

    展开全部 |mysql> select * from test_book1; +------+-----------+--------------------------------+ |e68 ...

  4. mysql创建超市管理_C#+mysql实现的超市管理系统

    [实例简介] 本资源是是一套利用C#与MYSQL数据写的小型超市管理系统,可以实现基本的功能. [实例截图] [核心代码] 超市管理系统 └── 超市管理系统 ├── AYCSGJ │   ├── A ...

  5. 下载mysql链接库

    下载mysql链接库 https://dev.mysql.com/downloads/ 下载安装包 选择C链接库 选择Linux平台64位,最后下载 下载好就可以上传到服务器上了

  6. .net 访问mysql链接池_c# – .NET SqlConnection类,连接池和重新连接逻辑

    我们有一些客户端代码,它使用.NET中的SqlConnection类与SQLServer数据库通信.它会间歇性地失败并出现此错误: "ExecuteReader需要一个开放且可用的连接.连接 ...

  7. oracle和mysql登录方式_使用普通方式和连接池方式获取Oracle和Mysql链接

    数据库连接方式 package com.niit.gb.comm; import java.sql.Connection; import java.sql.DriverManager; public ...

  8. c#.net配置mysql数据库连接池_C#MySQL连接池

    我正在使用C#多线程应用程序并使用 MySQL与整个应用程序的单一连接.但是当两个或多个线程同时尝试访问数据库时,我得到以下错误: There is already an open DataReade ...

  9. nodeJS+mysql+连接池——连接池的创建和使用

    nodeJS+mysql+连接池--连接池的创建和使用 https://www.cnblogs.com/shenlonghun/p/6133963.html 介绍 在 软件工程 , 连接池 是一个 高 ...

最新文章

  1. IOS UITabBarViewController 修改背景颜色
  2. Nginx日志配置及分割
  3. python的单元测试unittest模块
  4. 百旺智能编码_极速开票,智能编码,一键匹配,颠覆了传统手动输入的开票模式,再也不用担心选错税收分类编码啦...
  5. 浅议一种低成本的48V蓄电池组电压电流采集模块
  6. C语言中callback回调函数,C++回调函数(callback)的使用
  7. 一元三次、四次方程求解
  8. 2008英语四6级CET6资料大学六级单词
  9. c 语言 登陆窗口界面,c/c++语言实现登陆界面
  10. 简单易懂的并查集算法以及并查集实战演练
  11. 远程辅助必备免费神器ToDesk远程控制软件(答辩,远程,调试,办公)必备远程工具
  12. 2021年标准员-岗位技能(标准员)考试资料及标准员-岗位技能(标准员)模拟考试题
  13. 微信小程序图片验证组件封装
  14. Android 自定义数字角标
  15. oracle出现“无法为表空间 XX 中的段创建 INITIAL 区”错误
  16. bootloader与uboot之间有什么联系?
  17. 新网站多久被google收录?谷歌当天收录网站靠谱吗?
  18. Spring 源码中设计模式?这样回答面试官.才能显得你技高一筹.
  19. 联络家CEO许智凯:SNS网络只是一个平台(转载)
  20. Python14-15

热门文章

  1. MySQL乱码问题如何排查
  2. 1000行MySQL学习笔记,人手一份,建议收藏!
  3. MySQL每秒57万的写入,快还是慢?
  4. 想减少代码量,快设置一个有感知的 Aware Spring Bean
  5. 译文丨伯克利对serverless的看法:简化云编程
  6. 一文带你从零认识什么是XLA
  7. 论文解读丨无参数的注意力模块SimAm
  8. 顶会VLDB‘22论文解读:CAE-ENSEMBLE算法
  9. 【任务悬赏】就地过年,原地充电,华为云社区喊你拿新年红包啦!
  10. 14天1000+大集群滚动升级,银行柜台竟然毫无感觉