惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
罗磊的独立博客
雷峰网
雷峰网
量子位
V
Visual Studio Blog
Vercel News
Vercel News
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
The Cloudflare Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
宝玉的分享
宝玉的分享
月光博客
月光博客
Martin Fowler
Martin Fowler
aimingoo的专栏
aimingoo的专栏
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Microsoft Security Blog
Microsoft Security Blog
博客园 - 叶小钗
腾讯CDC
Engineering at Meta
Engineering at Meta
博客园 - Franky
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Y
Y Combinator Blog
Recent Announcements
Recent Announcements
Jina AI
Jina AI
A
About on SuperTechFans

博客园 - noahsky

Connection to https://dl-ssl.google.com refused 由于线程停在某个无法进行垃圾回收的点(可能是因为已对代码进行了优化),因此无法计算表达式的值的解决 3.1,ASP.NET MVC控制器概述(C#) [翻译]ASP.NET MVC 指南 "ORA-01460: 转换请求无法实现或不合理"及C#操作Blob总结 - noahsky - 博客园 你被移动增值了吗? sql2005数据库,在新增或更新数据时出现超时现象 使用Access时,碰到的没有解决的问题 System.IO.DirectoryNotFoundException: 未能找到路径“....”的一部分 少一个逗号出的错误 Web上传文件的原理及实现[转] (翻译)从底层了解ASP.NET体系结构 [转] HTTP请求过程简介[转] Http 请求处理流程[转] sql2000安装在win2003后只有在本机才能访问,局域网内其他机器不能访问 sql2000数据库在企业管理器中显示置疑(suspect),在查询分析器不显示。在企业管理器中附加:提示错误823 .net 必知 面向对象 C# 比较牛的代码
关于c#的连接池(以OracleConneciton为例)
noahsky · 2009-09-29 · via 博客园 - noahsky

关于c#的连接池:(以OracleConneciton为例)
1,默认c#的windows application的程序进程是创建connection pool的(Pooling=false不创建connection pool);默认最大连接数(Max Pool Size)为100;
new一个连接,如果connection pool中空闲的连接,则不会创建连接,否则会创建;
超出最大连接数,请求会放入队列,直到connection pool中有空闲连接或连接请求超时:
System.InvalidOperationException: 超时时间已到。超时时间已到,但是尚未从池中获取连接。出现这种情况可能是因为所有池连接均在使用,并且达到了最大池大小。
close或dispose,将连接放回池中。

而web application的服务端进程为w3wp.exe(IIS6.0),不管有多少客户端,connection pool是由w3wp.exe创建,所以客户将共享connection pool;而windows

application就不同,有多少程序进程,就创建多少个connection pool。

2,Oracle默认连接数设置:
在init.ora(9.2)中proccesses=150是最大连接数,我测试最多连接数为146(可能预留给或被oracle后台服务用)。用下面语句来查看当前连接数:
select count(1) from v$session
超出连接数时:
ORA-00020:maximun number of processes exceeded;

例:windows application中, new一个新连接,open后,执行select * from emp where empno=7934 for update nowait语句,close或dispose。
进入sqlplus,执行select program from v$session where username is not null,会发现程序进程依然存在,此时我们new的连接就在连接池中。
关闭程序,select program from v$session where username is not null,会发现程序进程消失了。当然我之前new的连接不使用,连接池也会自己释放它。
(...待续)