首页 > 编程知识 正文

java数据库连接池原理,java后端主流框架

时间:2023-05-03 06:28:22 阅读:162977 作者:1842

1

//构造函数,请不要被initIdleCapacity误解。 调用构造函数时,没有包含对象。

//initIdleCapacity指定目标池的初始引用大小。 空间不够的话会自动增加。 但是,在源代码中没有看到任何用途。

//maxIdle:或returnObject (,可以存储的对象数量的上限)。 达到此上限后,送回池的对象将自动发送回回收。

//initIdleCapacity大于maxIdle

publicstackobjectpool (poolableobjectfactoryfactory,intmaxIdle,intinitIdleCapacity ) {

this._pool=null;

this._factory=null;

this._maxSleeping=8;

this._numActive=0;

this._factory=factory;

this._maxSleeping=maxIdle

intinitcapacity=initidlecapacity

this._pool=newStack (;

this._ pool.ensure capacity (initcapacitythis._ max sleeping? this._ max sleeping 3360 init capacity;

}

publicsynchronizedtborrowobject () throwsException{

this.assertOpen (;

Objectobj=null;

booleannewlyCreated=false;

wile(null==obj ) {

if (! this._pool.empty () /如果堆栈中有对象,则弹出窗口

obj=this._pool.pop (;

}else{//如果堆栈中没有对象

if(null==this._factory ) {

thrownewNoSuchElementException;

}

obj=this._factory.makeObject (; //创建对象

newlyCreated=true;

if (obj==空值) {

thrownewnosuchelementexception (' poolableobjectfactory.make object ) ) returnednull.' );

}

}。

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。