哪位可以详细的介绍一下,连接池用完是如何放回池中的,并保证连接池的数量,请详细说一下实现原理,最好有代码,谢谢啦
4条回答 默认 最新
- rainbow702 2011-09-09 09:13关注
你要自己实现一个连接池?如果不是的话,你也不需要深究其原理,如果你真的想知道的话,那么,你可以去看一下 DBCP 的源码,它是 Tomcat 自带的。其实,它的原理就跟线程池差不多。大概是这个样子的,用一个容器,比如,一个 List,在初始化的时候,就往这个 List 里面存入 10 个 Connection ,然后你需要的话,就从这个 List 中取一个,如果多个人同时需要连接的话,那么就依次从这个 List 中取,但最多只能同时有10个人可能获得其中的连接,其他人,则处于等待状态。当那10个获得连接的人处理完事情之后,就又会把他们所获得的 Connection 放回到这个 List 中去,以供其它人使用。
这样做的好处就是,不用一旦有人想获得一个 Connection ,就去与数据库建立连接,因为连接的建立与销毁是高代价的。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥20 Keil uVision5创建project没反应
- ¥15 mmseqs内存报错
- ¥15 vika文档如何与obsidian同步
- ¥15 华为手机相册里面的照片能够替换成自己想要的照片吗?
- ¥15 陆空双模式无人机飞控设置
- ¥15 sentaurus lithography
- ¥100 求抖音ck号 或者提ck教程
- ¥15 关于#linux#的问题:子进程1等待子进程A、B退出后退出(语言-c语言)
- ¥20 web页面如何打开Outlook 365的全球离线通讯簿功能
- ¥15 io.jsonwebtoken.security.Keys