请教个ADO数据库连接池设计问题
通常取的一个连接后.用完释放你们是如果做的?
我目前有2种方案.
1:取的连接池对象.用完把连接还给连接池.这个时候把指针外部指针复值NULL.但怕对上层这样暴露接口的话.万一程序员忘记复值NULL了,这样在多线程中一个连接对象可能被同时操作.很不安全.
2:取的连接池对象.用完把连接还给连接池,同时在连接池销毁该对象.这样保证了程序员不需要考虑外部指针复值NULL(好把,野指针就野把).解决了上面的安全问题.但如此一来.连接池又要自己创建.加大了开销.
在极限情况.即所有连接同时释放.会把连接池弄空,又要重新开起所有连接.耗时就更大了.
希望大家能给给意见,或者有更好的方案就更好了