C++ ADO的数据库连接池..

此连接池用于管理数据库的多个连接,主要思想如下:

1)按照传入的参数起N个连接来连接数据库(参数中有最小连接数N,最大连接数M)。

2)建立一个空闲队列(初始化的N个连接放到空闲队列),一个使用队列来管理,使用的时候重空闲队列抓取一个连接,丢到使用队列,

如果空闲队列没有可用连接,并且连接数小于允许的最大连接数(<M)则创建一个新的连接,否则等待。

3)起一个守护线程,发现用过的连接,则使用队列中移除,添加到空闲队列,无效的链接则删除。

 

代码如下,

首先是头文件,因为导出的是DLL,文件中的RFIDAPI定义如下

#ifdef _USRDLL
#define RFIDAPI _declspec(dllexport)
#else
#define RFIDAPI _declspec(dllimport)

 

下面是实现文件,

为了使用方便,使用的时候,自己定义个类来初始化连接以及所使用的接口,

 

例如,,定义个DBinterface的类

头文件中这样写

实现文件如下

 

这样把头文件包含到工程,,

调用InItDBConnPool初始化连接池

然后就可以直接使用接口了

 

  • 2
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 34
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 34
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值